linux内核在uboot下解压后无法启动,,DDR测试也没啥问题,求解
有一块板,linux内核解压后无法启动,打印完如下信息后死掉了:
## Booting kernel from Legacy Image at c0700000 ...
Image Name: Linux-2.6.33-rc4
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1725084 Bytes = 1.6 MB
Load Address: c0008000
Entry Point: c0008000
Verifying Checksum ... OK
Loading Kernel Image ... OK
OK
Starting kernel ...
Uncompressing Linux... done, booting the kernel.
之后串口无输出也无法输入。但是同样的程序在其他板上又能正常运行。
我怀疑是DDR的问题,往ddr各整数M的地址上写一段数据,然后读出,没啥问题;在DDR起始地址连续写入指定数据,在128M空间内遍历查询是否有数据块与写入的数据重叠,没啥问题;把ddr的速率从150M降到133M,还是不行。而且uboot又能正常运行,感觉DDR没啥问题。但是linux就是不能起来,实在找不出原因了,请大家帮忙看看。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(9)
解压后一点信息都没有,看一下uboot 向内核传递的console参数对不对
回复 2# 奇门遁甲-lu
同意这个,看样子没什么问题,kernel仍然在正常启动,但是串口收不到消息了。很可能是kernel不认为你使用的串口是console。
可关键是其他的板子又能正常启动啊,uboot和kernel都是一样的。
你最好完整测试一下内存,你既然都怀疑它。
能提供一个测试方案吗?我现在想到能测得基本都测了。而且在仿真器下看了内存,写入数据是没问题的,而且在其他地址空间也不重复。
看一下uboot 向内核传递的console参数对不对
mark下
mark下
mark, 怎么没给出答案啊?