utf-8 このカーネルソースは Renesas社 cip-4.4 vlp217 から得られるオリジナル $ tar xf linux-4.4.222-cip-4.4_v217_original.tgz $ cd linux-4.4.222-cip-4.4_v217 パッチ $ patch -p1 < kernel-patch_4.4.222_cat845_20201005.txt ビルド $ make cat845_defconfig $ make 出来上がった arch/arm/boot/zImage arch/arm/boot/dts/r8a7745-cat845.dtb をバイナリ結合して、uImage形式の arch/arm/boot/uImage+dtb_cat845 を作る $ chmod +x makeUimage.sh $ ./makeUimage.sh ■ 書き込み arch/arm/boot/uImage+dtb_cat845 を CAT845 実機にコピーする。 ■ 上記の カーネル+dtb ファイルをSDカードの p1 領域に置いてロードするには、 uboot で => run boot_from_sd => printenv bootcmd=fatload mmc 1:1 0x40007fc0 /uimage+dtb_cat845; bootm 0x40007fc0 ■ mtd (qspi-nor flash) からブートする場合 # cp uImage+dtb_cat845 /dev/mtdblock2 u-boot で => run boot_from_mtd => printenv bootcmd=sf probe; sf read 0x40007fc0 0x600000 0x600000; bootm 0x40007fc0 ■ 制限事項 ■ 2020/10/5 dts を書いただけなので 検証済み ・ uart ・ ethernet (tcp/ip) ・ usb host 未対応 ・ reboot ・ RTC (hwclock) 未検証 ・ HDMI / sound / can / gpio類 バグ mtdでブートすると spi_map_buf の下回りで落ちる。 qspi-nor の下回り?? とりあえず SD カードで進めてください。 Unable to handle kernel paging request at virtual address e92f4f98 pgd = e5d0d340 [e92f4f98] *pgd=80000040007003, *pmd=00000000 Internal error: Oops: 206 [#1] PREEMPT SMP ARM Modules linked in: CPU: 1 PID: 1304 Comm: chown Not tainted 4.4.222-cip45 #2 Hardware name: Generic R8A7745 (Flattened Device Tree) task: e6a1ca80 ti: e6310000 task.ti: e6310000 PC is at page_address+0xc/0xe4 LR is at spi_map_buf+0x1ec/0x270 pc : [] lr : [] psr: 20000113 sp : e63119b8 ip : e63119e0 fp : e63119dc r10: 00000024 r9 : 00000001 r8 : e61d7580 r7 : e6311b74 r6 : e61d7580 r5 : 00000001 r4 : c081ef8c r3 : c081ef8c r2 : 00000002 r1 : 00000000 r0 : e92f4f98 Flags: nzCv IRQs on FIQs on Mode SVC_32 ISA ARM Segment none Control: 30c5387d Table: 65d0d340 DAC: be835581 Process chown (pid: 1304, stack limit = 0xe6310210) Stack: (0xe63119b8 to 0xe6312000) 19a0: c081ef8c 00000001 19c0: e61d7580 e6311b74 e61d7580 00000001 e6311a2c e63119e0 c0363370 c00cfafc