我有一个使用u-boot(1.1.5)启动Linux内核(3.9)的系统。 当内核uImage使用u-boot和tftp闪存时,一切运行良好。我尝试使用以下命令在内核提示符中更新内核:
flash_eraseall /dev/mtd2
nandwrite -p /dev/mtd2 /uImage
reboot
选定的分区是可以的。重新启动u-boot时会显示消息:
Loading from NAND 512MiB 3,3V 8-bit, offset 0x200000
Image Name: Linux-3.9.0
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1897760 Bytes = 1.8 MB
Load Address: 20008000
Entry Point: 20008000
NAND read from offset 3c0000 failed 0
** Read error
Wrong Image Format for bootm command
ERROR: can't get kernel image!
mtd2从0x200000开始。我怎么能解决这个问题。
答案 0 :(得分:1)
取消从内核启动,以便最终进入U-boot。进入后,尝试:
# setenv bootargs root=/dev/mtd2 (or root=/dev/mtdblock2);
# setenv bootcmd 'bootm 0x200000 (or 0xc0200000)'
*请注意,除了根据您的要求设置的其他环境变量外,还设置了上述两个环境变量。