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

请教OAMPL137 从NANDFLASH 加载内核 显示Verifying Checksum … Bad Data CRC

参考OMAP-L137 EVM自制的板卡,加入NAND FLASH并从NAND启动。

1、uboot启动后通过tftp命令能正常的加载启动内核,命令及串口显示如下:

U-Boot > tftp 0xc0700000 uImage

U-Boot > bootm

## Booting kernel from Legacy Image at c0700000 …

   Image Name:   Linux-2.6.33-rc4

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    1989976 Bytes =  1.9 MB

   Load Address: c0008000

   Entry Point:  c0008000

   Verifying Checksum … OK

   Loading Kernel Image … OK

  Starting kernel …

。。。。。

2、uboot启动后通过tftp命令加载内核到SDRAM,再通过nand write.e命令把uImage写到NAND FLASH中,

然后再把NAND FLASH中uImage读回SDRAM并bootm,提示Verifying Checksum … Bad Data CRC。

命令及串口显示如下:

U-Boot > tftp 0xc0700000 uImage

U-Boot > nand erase 0x200000 0x200000

U-Boot > nand write.e 0xc0700000 0x200000 0x200000

U-Boot > nboot.e 0xc0700000 0 0x200000

U-Boot > bootm

## Booting kernel from Legacy Image at c0700000 …

   Image Name:   Linux-2.6.33-rc4

   Image Type:   ARM Linux Kernel Image (uncompressed)

   Data Size:    1989976 Bytes =  1.9 MB

   Load Address: c0008000

   Entry Point:  c0008000

   Verifying Checksum … Bad Data CRC

请教CRC错误这种问题如何解决 谢谢。。。

kun han:

经对比从NAND FLASH中读出的kernel,与通过tftp加载的kernel。发现从NAND FLASH读的数据不正确,读出的第1、3、5page数据正确,2、4、6page数据全FF,没页2048kbyte。

Denny%20Yang99373:

回复 kun han:

先找个NAND读写测试工程测试一下,可能NAND FLASH有问题

也有可能你换过NAND,相应的软件没有跟着修改

kun han:

回复 Denny%20Yang99373:

@Denny Yang,谢谢您的回复。

用DaVinci-PSP-SDK-03.20.00.14中的NANDwrite 程序烧写ais ubl uboot 都能正常运行,或许FLASH本身没问题。

NAND芯片有更换,OMAP-L137 EVM中是4G的包含2个Plane,自制的板卡用的1G的只有一个Plane。

uboot的NAND读写驱动,同时操作两个Plane?第1页数据写在Plane1的page1,第2页数据写在Plane2的page1,

第3页数据写在Plane1的page2,第4页数据写在Plane2的page2。。。?所以读到的1、3、5page数据正确,2、4、6page数据全FF。

Denny%20Yang99373:

回复 kun han:

可以用NANDwrite 直接把KERNEL UIMAGE烧写进去吗?

按道理通过UBOOT烧写NAND,UBOOT自己应该能读出来

kun han:

回复 Denny%20Yang99373:

NAND换成同OMAP-L137 EVM一样的芯片,CRC错误仍然存在。

u-boot更换成REL_LSP_02_20_00_07中的u-boot-1.3.3后,能正常从NAND加载内核。

TI发布DaVinci-PSP-SDK-03.20.00.14时没在OMAP-L137 EVM上验证?

还是我下载的版本号不对,应该下载DaVinci-PSP-SDK-03.20.00.13?

DaVinci-PSP-SDK-03.20.00.14中的dspubl-03.20.00.14必须修改ubl.h中的

#define MAGIC_NUMBER_VALID          (0x55424C00)

#define UBL_MAGIC_BIN_IMG           (0x55424CBB)

或者修改nand-writer-03.20.00.14的相应define 才能启动arm端的程序。

赞(0)
未经允许不得转载:TI中文支持网 » 请教OAMPL137 从NANDFLASH 加载内核 显示Verifying Checksum … Bad Data CRC
分享到: 更多 (0)