今天完成android 2.6.32.9内核到s3c6410的移植。这个计划是3天前开始的,但犯了个错误,我从android.git.kernel.org上git clone git://android.git.kernel.org/kernel/common.git下来的内核代码竟然是2.6.27版本的,并不是最新版本,开始没注意以为 down下来的就是android2.2的最新内核代码。折腾了两天时间把内核移植到友坚6410开发板上,跑起来才看到内核版本是2.6.27,开始感到十分奇怪,google了下,才发现有人跟我犯同样的错误,common.git clone下来的始终是2.6.27版本的,要获得新的内核代码,必须git checkout origin/android-2.6.32,我看了下最新的已经是2.6.35的了。呵呵,不管下了个2.6.32的开始移植。
从友坚光盘中拷出s3c6410的相关驱动和mach_6410,plat_64xx目录下的一些代码,但编译一堆错误,一个个检查,发现2.6.32与友坚的2.6.28还是有很大差别的,整个一天就是不断改代码,排除编译错误。最后内核终于是跑起来了,我也懒得写具体过程,挺烦的。
但在挂nfs的时候出错,检查了下,发现是dm9000驱动不对,这个还没搞定,下午改了下dm9000 驱动,发现会出现oops错误,这个暂时放下,接下来准备花点时间把s3c6410的linux bsp的架构好好整一遍,回头再搞定这些驱动。这个暑假的目标不大,就是想完整的走一遍linux的流程,就以s3c6410为平台。如果还有精力,再花点精力搞定coldfire的usb bootloader,现在很难说能有多少精力,不好订计划,还是根据情况决定吧。7月份期望完成coldfire v1开发板的调试工作,最迟也不得晚于8月31日,这个工作一定要完成,腾出精力去做更重要的事情。
用户309856 2011-1-20 16:08