TI中文支持网
TI专业的中文技术问题搜集分享网站

nand启动uboot起不来的问题

前提:之前sd卡启动的实验uboot,然后烧写uImage和rootfs到nand,都正常运行了。现在是将MLO也uboot也烧写到了nand启动后提示:

从告警的信息上看SPL段的代码以及是运行成功了。

The Expected Linux image was not found. Please check your NAND configuration.
Trying to start u-boot now…

求指导,这是什么原因??

andarm lin1:

有没有遇到类似的问题的??

andarm lin1:

上面的问题怀疑是ECC问题。

nand启动也两种硬件ECC,1bit和8bit.

但是我尝试使用了两种方式写入u-boot.bin文件都依然是不成功。

之前启动nand里面的文件系统也遇到ecc问题,最后是用sw模式的ECC解决了。

Jian Zhou:

回复 andarm lin1:

是不是烧错了分区了,NAND 分区如下:

/* NAND partition information */static struct mtd_partition am335x_nand_partitions[] = {/* All the partition sizes are listed in terms of NAND block size */ {  .name           = "SPL",  .offset         = 0,   /* Offset = 0x0 */  .size           = SZ_128K, }, {  .name           = "SPL.backup1",  .offset         = MTDPART_OFS_APPEND, /* Offset = 0x20000 */  .size           = SZ_128K, }, {  .name           = "SPL.backup2",  .offset         = MTDPART_OFS_APPEND, /* Offset = 0x40000 */  .size           = SZ_128K, }, {  .name           = "SPL.backup3",  .offset         = MTDPART_OFS_APPEND, /* Offset = 0x60000 */  .size           = SZ_128K, }, {  .name           = "U-Boot",  .offset         = MTDPART_OFS_APPEND,   /* Offset = 0x80000 */  .size           = 15 * SZ_128K, }, {  .name           = "U-Boot Env",  .offset         = MTDPART_OFS_APPEND,   /* Offset = 0x260000 */  .size           = 1 * SZ_128K, }, {  .name           = "Kernel",  .offset         = MTDPART_OFS_APPEND,   /* Offset = 0x280000 */  .size           = 40 * SZ_128K, }, {  .name           = "File System",  .offset         = MTDPART_OFS_APPEND,   /* Offset = 0x780000 */  .size           = MTDPART_SIZ_FULL, },};

andarm lin1:

回复 Jian Zhou:

检查过,肯定不是分区问题。

现在仍然怀疑是nand ecc问题。

andarm lin1:

回复 andarm lin1:

问题还是没有解决。

现在跟踪代码,打印信息:

mkimage signature not found – ih_magic = ea000013      //这个是什么意思????

Jumping to U-Bootimage entry point: 0x80800000   //打印到这里就是掉了,这是为什么???

andarm lin1:

回复 andarm lin1:

问题解决了,

总结一下:

这是由于自己编译的u-boot.bin文件大于200k,而官方的代码上u-boot.bin的大小是200k。

在spl.c文件中进行修改。
#ifndef CONFIG_SYS_MONITOR_LEN#define CONFIG_SYS_MONITOR_LEN (512 * 1024)#endif

Jian Zhou:

回复 andarm lin1:

请问你用的是SDK06么?应该是烧u-boot.img吧,SDK里带的有356K呀

andarm lin1:

回复 Jian Zhou:

我用的不是sdk6.0,是uboot官方的源码。uboot-2013.10… 

Yaoming Qin:

回复 andarm lin1:

您前面的那个宏是定义什么的啊,为啥开那么大

赞(0)
未经允许不得转载:TI中文支持网 » nand启动uboot起不来的问题
分享到: 更多 (0)