主题 : 关于mini2440移植的u-boot-2012.07  NAND无法写入数据的问题 复制链接 | 浏览器收藏 | 打印
级别: 新手上路
UID: 75758
精华: 0
发帖: 1
金钱: 5 两
威望: 1 点
贡献值: 0 点
综合积分: 2 分
注册时间: 2012-08-12
最后登录: 2012-08-30
楼主  发表于: 2012-08-22 22:39

 关于mini2440移植的u-boot-2012.07  NAND无法写入数据的问题

     各位大侠,小弟最新移植了一版u-boot,到现在为止还有nand flash无法写入的问题(read、erase等操作都能正常完成),请版上的大牛们帮我看看,u-boot操作的log我已经传到附件中了~

实验说明:
1. 我先往0x31000000地址处写了一些数据,这些数据通过md.b 0x31000000 0x20打印出来

2. 然后nand write 0x31000000 0x560000 0x20(事先erase过的)

3.之后nand read 0x30000000 0x560000 0x20

4.最后md.b 0x30000000 0x20

    实验过后发现读出的数据和写入的数据不一致,读出的数据全部是0xFF(读功能没有问题,数据确实是0xFF),我分析觉得是nand write写的有问题,然后把nand驱动的底层命令和数据都加了打印,但发现nand write的指令序列没有问题,所以现在就不知道问题出在哪了。。。。


打印全部在log.txt里面

寄存器初始化代码:
    cfg = S3C2440_NFCONF_TACLS(tacls - 1);
    cfg |= S3C2440_NFCONF_TWRPH0(twrph0 - 1);
    cfg |= S3C2440_NFCONF_TWRPH1(twrph1 - 1);
    writel(cfg, &nand_reg->nfconf);

    cfg = (1<<4)|(0<<1)|(1<<0);
    writel(cfg, &nand_reg->nfcont);
[ 此帖被net_count在2012-08-22 22:44重新编辑 ]
附件: log.txt (14 K) 下载次数:3
级别: 侠客
UID: 33962
精华: 0
发帖: 53
金钱: 275 两
威望: 55 点
贡献值: 0 点
综合积分: 106 分
注册时间: 2010-12-08
最后登录: 2017-09-13
1楼  发表于: 2012-10-31 22:40

 Re:关于mini2440移植的u-boot-2012.07 NAND无法写入数据的问题

试下nand write 0x31000000 0x560000 0x10000 , 写多点看看