u-boot: Warning - bad CRC, using default environment 问题的处理
关于 "Warning - bad CRC, using default environment" 启动问题的解决:
原因是flash中环境变量区无数据, 所以读取后会报错, 用户通过save或是saveenv保存变量之后再次启动便不会有此提示了.
这个问题网络上很多大侠都讲过了.
但是自己的u-boot试了几遍还是不行, 调了一个晚上才发现是自己的flash驱动有些问题.
我的flash驱动是照着AMD的修改的, 自己太懒了, 只是修改了命令字以及地址, 别的部分也没细看, 粗心害死人啊!
AMD的flash用DQ5作为操作错误的判断, 而SST好像没有, 这便导致我的擦除操作总是错误, 因而参数写入错误! 其实在程序里
注释掉下面两行基本就好了
// if (!chip && ((result&0xFFFF)&BIT_PROGRAM_ERROR))
// chip = ERR;
下面将改写的flash.c作为附件给出, 希望可以给大家以参考.
https://static.assets-stash.eet-china.com/album/old-resources/2009/7/13/cbbb0f76-967b-42d4-82b6-8d6b543fec4b.rar
文章评论(0条评论)
登录后参与讨论