zbf 发表于 2014-1-15 23:27:22

这条警告信息是从哪里发出来的?Warning - bad CRC or NAND

之前因为MMU设置错误,可能是直接对NAND地址的内容进行读取而产生了这条警告信息。

虽然问题已经解决,但是又有一个疑问,Warning - bad CRC or NAND, using default environment 这条信息到底是从哪里发出来的?

我是直接裸机跑的,boot也是最简单最基础的一般的init.s,主程序里面更是没有这段字符串。

这段字符串是从UART0口观察到的。

这是ARM本身有的警告机制还是编译器另外加进去的?

zbf 发表于 2014-1-19 23:45:24

没人回么……失落,(秋叶吹过的表情)

boyiee 发表于 2014-1-20 08:44:55

本帖最后由 boyiee 于 2014-1-20 08:47 编辑

不知道楼主的裸机是什么情况,我只知道Uboot会出现这个问题的原因。

这个警告一般是读取存储器设置的环境变量错误引起的, 或者CRC错误,但是第一种情况多,因为UBOOT正常Flash一般没问题, UBOOT会读取设定地址的环境变量,如果没有有效的环境变量就会出现这个提示,

一般烧写Uboot后你把环境变量擦除了,所以出现这个提示。

你可以设置下环境变量,setenv 下IP或者启动参数,然后再saveenv下,下次启动就没了。

当然你要先保证FLASH的操作正常,比如上面saveenv命令正常。

kingreat 发表于 2014-1-20 10:00:36

u-boot打印出来的,如果u-boot从存储设备上读不到(或者读出不正确)就会显示这条信息。你可以在u-boot的命令行状态下输入saveenv保存环境变量即可。不保存也无所谓,u-boot会使用默认默认的环境变量。

onece 发表于 2014-1-20 10:12:14

u-boot打印出来的,没有影响的

zbf 发表于 2014-1-21 13:51:48

boyiee 发表于 2014-1-20 08:44
不知道楼主的裸机是什么情况,我只知道Uboot会出现这个问题的原因。

这个警告一般是读取存储器设置的环境 ...

就是 最简单的 .s 文件 只是干了初始化SDRAM分配堆栈设置中断向量的工作。。。

等一下,原本的NOR 是用的U-BOOT,我是在此基础上进行JTAG用现在的程序替换仿真的。。。我再去试试
页: [1]
查看完整版本: 这条警告信息是从哪里发出来的?Warning - bad CRC or NAND