2010-01-25 209 views
4

我设置了Kamikaze工具链(从openwrt),并为AMCC PPC405ex kilauea参考板编译了Linux 2.6.30.x内核。但是,由于某种原因,我在uBoot中做了一些错误,因为我无法从squashfs映像运行内核。图像通过tftp加载并解压缩,但控制台输出不启动。如何让uBoot与squashfs一起工作/ uBoot中的FDT是什么?

我没有改变Linux内核命令行,它看起来很好(console=ttyS0,115200 root=/dev/mtdblock)。我也有点不解,在uBoot中fdt是什么?

我不能完全肯定,如果这真的是属于对计算器,但话又说回来,这是不是一个真正的superuser.com问题是(因为这与一个开发环境,这样做肯定是相关编程,即使不完全是一个编程的问题)

回答

2

我能解决这个我自己,我应该使用openwrt-boardname-squashfs.img但instaed我必须使用openwrt-architecture-uImage图像,只包含内核,采取从build_dirroot.squashfsopenwrt-boardname.dtb因为它们未被复制到bin/目录中。

后,这些命令将正确地弹出板:

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 

有可能是一个更简单的方法,但我还没有想出如何“再分配” MTD的,所以我不会有最初将内核映像加载到内存中的user空间。