How to get uBoot to work with squashfs / What is FDT in uBoot?

I installed the Kamikaze toolchain (from openwrt ) and compiled the Linux kernel 2.6.30.x for the AMCC PPC405ex kilauea link . However, for some reason, I am doing something wrong in uBoot, since I cannot start the kernel from the squashfs image. The image is loaded accurate to tftp and compressed, but the console output does not start.

I have not changed the Linux kernel command line and it looks just fine ( console=ttyS0,115200 root=/dev/mtdblock ). Am I also a little puzzled by what fdt is in uBoot?

I'm not quite sure if this really applies to stackoverflow, but again this is not a superuser.com issue either (and since this is related to the development environment, it is definitely related to programming, although this is not really a programming issue)

+4
source share
1 answer

I was able to solve this myself, I should not use openwrt-boardname-squashfs.img , but instaed I should use the openwrt-architecture-uImage image containing only the kernel, take root.squashfs and openwrt-boardname.dtb from build_dir , since they are not copied to the bin/ directory.

after that, these commands will correctly return the board:

 tftp 0xfc1e0000 openwrt-kilauea.dtb tftp 0x400000 openwrt-ppc40x-uImage tftp 0x200000 root.squashfs setenv bootargs 'console=ttyS0,115200 root=/dev/mtdblock2 rw' bootm 0x400000 - 0xfc1e0000 

there may be an easier way, but I did not understand how to โ€œrepartitionโ€ mtd, so I would not have to load the kernel image into user space in memory first.

+2
source

Source: https://habr.com/ru/post/1299357/


All Articles