您的位置:首页 > 运维架构 > Linux

移植Linux-2.6内核到蓝海薇芯开发板

2009-04-19 21:41 387 查看
最近买了蓝海薇芯的arm9 s3c2410 开发板,但是上边带的内核是linux-2.4内核,自己虽然比较菜,但也知道2.4的内核都是老黄历了,所以打算移植个2.6的内核到板子上去。

首先是熟悉一下开发板自己带的功能吧。先借个图吧,大部分开发板的loader好像功能都做的差不多(网上查了几个好像是这样)

看内核移植的书有一段时间了,感觉总是不得要领,可能是泛泛看书效果不好吧,还是边学边练吧,

第一步:要移植2.6的内核,需要先改下开发板的loader代码,参照linux2.6.11.12及u-boot1.1.4在s3c2410上的移植的问题的介绍,应该把linux_params,把相应的内容后面的ttyS0改成ttySAC0,这个代码在BOIS原代码的/src/nand.c中,原因是ttyS0 是2.4的串口名,而linux2.6是ttySAC0,之后把剪裁的内核烧进flash吧,后边....

这个地方自己摸索了点经验,不知道对不对,先记录下吧。

我把厂家的bios源码在ads里面打开,修改了控制台console=ttySAC0,然后烧尽了flash里面,结果是这样

启动信息

Power on reset
Read chip id = ec76
Nand flash status = c0
Env.Os_Auto_Flag=ff
正常启动应该是这样的

Power on reset
Read chip id = ec76
Nand flash status = c0
Env.Os_Auto_Flag=2

我想可能是自己没改对,在几经修改,编译,烧写,结果都不可以,真是失望啊!

后来冷静的想了想,可能是这样,第一次烧写不成功,flash里面的信息已经乱了,应该彻底擦出掉再重新烧写,于是我把原来的bios再烧写进去,然后擦除,然后再烧写修改完的bios,结果,呵呵,就ok了,在把kernel烧写进flash也可以正常启动了!兴奋啊,下面开始内核剪裁的微调了.......
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: