bug:
移植uboot-2012.04.01添加mtdparts命令后加载uImage_3.5并启动,产生错误信息:
// Verifying Checksum … Bad Data CRC
ERROR: can’t get kernel image! //
但加载uImage_4.3却能正常启动
猜测:
uboot源码添加mtdparts命令后参数为:
#define MTDIDS_DEFAULT "nand0=s3c2440_nand"
#define MTDPARTS_DEFAULT "mtdparts=s3c2440_nand:256k(u-boot)," \
"128k(env)," \
"2m(kernel)," \
"-(rootfs)"
输入mtdparts命令显示为:
device nand0 <s3c2440_nand>, # parts = 4
#: name size offset mask_flags
0: u-boot 0x00040000 0x00000000 0
1: env 0x00020000 0x00040000 0
2: kernel 0x00200000 0x00060000 0
3: rootfs 0x0fda0000 0x00260000 0
可能uImage_3.5与新uboot对分区的命名不同导致启动无法识别。
验证:修改mtdparts参数
#define MTDIDS_DEFAULT "nand0=s3c2440_nand"
#define MTDPARTS_DEFAULT "mtdparts=s3c2440_nand:256k(u-boot)," \
"128k(params)," \
"2m(kernel)," \
"-(rootfs)"
重新上传编译烧写,依然相同错误,验证失败
此问题待探讨…