Chinaunix

标题: 高手们请进!!关于u-boot引导内核的问题!! [打印本页]

作者: herocw    时间: 2008-07-18 12:05
标题: 高手们请进!!关于u-boot引导内核的问题!!
出了一个奇怪的问题。。
我移植的2.618内核,用u-boot来启动。在u-boot中不能设置启动参数bootargs。
内核只能使用编译时设置的默认参数启动。否则uncopressing linux 后面就什么也不显示了。。。

我的操作过程:
t 32000000 uzImage
t 30800000 initrd
set bootargs
bootm 32000000 30800000
这时系统可以正常系统。。。。

另一种操作:
t 32000000 uzImage
t 30800000 initrd
set bootargs  root=/dev/ram rw init=/linuxrc
bootm 32000000 30800000

这样的话内核在解压后就什么也不显示了。。。。。
好奇怪的问题。。

由于我没有仿真器,所以没法调试内核。。。望有经验的高手们出谋划策。。。不甚感激。。
还有一点我在start_kernel里面设置了一些输出语句,printk("<0> in start_kernel!");也显示不出来。。。
作者: kingreat    时间: 2008-07-18 13:32
原帖由 herocw 于 2008-7-18 12:05 发表
出了一个奇怪的问题。。
我移植的2.618内核,用u-boot来启动。在u-boot中不能设置启动参数bootargs。
内核只能使用编译时设置的默认参数启动。否则uncopressing linux 后面就什么也不显示了。。。

我的操作 ...


请问楼主用的是那个版本的u-boot, 看起来好奇怪。

我用u-boot1.1.6,
作者: 许木木    时间: 2008-07-18 14:04
标题: 或许是console的设置问题
在你的bootarg 里加入 console=ttySAC0试试
作者: herocw    时间: 2008-07-18 17:42
标题: 回复 #1 herocw 的帖子
问题解决了。。。原来是内核的问题。。
在arch/arm/kernel/setup.c中,把default_command_line的定义后面的__initdata属性去掉就OK了。。
我下午的时候尝试了好多次才试出来的。
如果还不行就把前面的static属性也去掉。肯定没问题。。。
希望对遇到同样问题的人有帮助吧。。。。
作者: herocw    时间: 2008-07-18 17:42
标题: 回复 #3 许木木 的帖子
谢谢木木的回复。。。。。
作者: herocw    时间: 2008-07-18 17:44
标题: 回复 #2 kingreat 的帖子
我用的也是1.1.6版本。。。。
作者: 功夫熊猫    时间: 2008-07-20 00:38
很不错,谢谢分享
作者: sep    时间: 2008-07-20 01:02
原帖由 herocw 于 2008-7-18 17:42 发表
问题解决了。。。原来是内核的问题。。
在arch/arm/kernel/setup.c中,把default_command_line的定义后面的__initdata属性去掉就OK了。。
我下午的时候尝试了好多次才试出来的。
如果还不行就把前面的static ...

赞。以后遇到这种问题,也是很好的一个参考




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2