共1条
1/1 1 跳转至页
[转帖]成功将2。6。9的内核移植到PXA27x平台上,特发贴庆祝一下!
昨天天在大胆改了一个明确说明不准改的配置文件之后,终于使2。6。9的内核在PXA27x的平台上跑起来了。兴奋之余,将移植过程中的体会同大家分享一下。
基于PXA27x平台的arm-linux工具包可以在
ftp://ftp.linux.org.uk/pub/linux/arm/people/xscale/mainstone
目录下面获得,这个目录下面有 2.4.21和2.6.9两个版本linux内核的补丁和其它工具。我下了2。6。9这个版本的,安装的步骤基本是按里面readme.txt文件列出的步骤进行,特别说明一点,下载的目录里有bin目录,里面有编译好的内核映像zImage.qvga、zImage.vga和blob二进制文件,以及jffs文件系统。可能这些文件都是针对其它某个平台编译出来的,我将它们烧到平台上后发现它们都有问题。
哎,没办法,还得自己动手来编译!
首先是编译blob。输入命令make -f Makefile.cvs,这一步一般不会有问题,不过我还是碰到了问题:autoheader后出现错误。检查后发现是autoconfig和automake的问题,于是重装了这两个软件后,问题解决了。然后就是要执行./ configure命令,此命令后面有一些参数,比如--with-linux-prefix=内核所在目录,注意:这里的目录一定要些绝对路径,千万别些相对路径,我一开始些的是相对路径,编译总是失败,郁闷的快不行了,后来改成绝对路径,编译成功!成功后用jflashmm工具把它烧进flash里面去,如果烧录失败,没关系,多烧几遍就好了。
烧好blob后,试了几个命令没有问题,还蛮有成就感的。然后是编译内核,按照readme.txt的步骤做了无数遍,结果烧到平台上后无一例外地在启动过程中死机了,郁闷之中,只好到处逛论坛,功夫不负有心人,终于发现有人说要把.config文件中的men=128M改成men=32M,~/drivers/mtd/maps/pxa27x-flash.c中的WINDOW——SIZE改成32*1024*1024,~/drivers/mtd/chips/cfi——cmdset——0001。c中的两个21改成20。得到这些点拨之后,立即测试,结果还是在启动过程死机了,不过这次错误的地方与一开始时不一样,虽说被从一个错误的港湾带到了另一个错误的港湾,但还是挺高兴的,因为最起码说明这有可能是问题之一。这次总是停在网络配置处,看来是网络有问题,可是也不应该阿,因为之前能用tftp协议传输内核映像,说明网络工作正常啊。再仔细看看出错的地方输出信息,有一个现象好奇怪,内核中显示的ip-config信息中列出的server ip是192.168.1.100,client ip是193.168.1.101,我在编译之前没有设这两个ip地址呀,它们怎么会出现在内核中呢?内核源代码可是下载的标准内核,不应该会自动设置ip呀,难道是在给内核打布丁时打上去的?先别管它吧,试试将主机的ip改成192.168.1.100,改完之后,错误依旧,仍然是blob中tftp用起来没问题,而内核启动不了,我想也许是因为主机是采用dhcp协议获得的ip地址,用ifconfig命令修改ip后不能正常进行网络工作吧。于是我决定换一种思路,直接修改内核文件,迫使内核启动时设置的ip地址与我在实验室中用的ip地址相符。怎么改呢?搜一搜看内核中那几个文件中包含192,168,发现主要是几个config文件,看来是因为config文件的设置了ip,使得编译时内核中固化了ip,我主要锁定了两个文件.config和mainstone_defconfig文件,这两个文件的开头明确写着:"this file is generated aotumatically, please don't edit it",可是我已经郁闷得快不行了,哪里还管它什么don't edit了,大胆将它们中设置ip的那行改了,并把该行末尾的men=128M改成men=32M。重新执行make mainstone_defconfig,make oldconfig后发现前面改的已经被恢复成最初的值了,那两个文件的内容应该就是这两步获得的,所以我决定在这两步之后修改它们,然后直接执行make zImage。实践证明,我的判断是对的,就怎样 2。6。9的内核在pxa27x上跑通了!
进入系统后,我迫不及待的启动了文件系统中的qpe程序,哇,竟然运行正常!还有哦,里面还有小游戏,于是顺便玩了一盘围棋(结果当然是输了,你知道我没玩过围棋,只是知道一点围棋规则而已)。
系统装好了,终于可以往下做导师要求的项目了。我在这里把在pxa27x上烧写2。6。9的内核经历记了下来,希望能给那些将要用pxa27x平台做嵌入式linux开发的同仁一点参考,同时也希望在以后的开发过程中能和大家一起交流,共同进步!
关键词: 转帖 成功 内核 移植 PXA27x 台上 特发
共1条
1/1 1 跳转至页
回复
有奖活动 | |
---|---|
【有奖活动】分享技术经验,兑换京东卡 | |
话不多说,快进群! | |
请大声喊出:我要开发板! | |
【有奖活动】EEPW网站征稿正在进行时,欢迎踊跃投稿啦 | |
奖!发布技术笔记,技术评测贴换取您心仪的礼品 | |
打赏了!打赏了!打赏了! |
打赏帖 | |
---|---|
与电子爱好者谈读图四被打赏50分 | |
与电子爱好者谈读图二被打赏50分 | |
【FRDM-MCXN947评测】Core1适配运行FreeRtos被打赏50分 | |
【FRDM-MCXN947评测】双核调试被打赏50分 | |
【CPKCORRA8D1B评测】---移植CoreMark被打赏50分 | |
【CPKCORRA8D1B评测】---打开硬件定时器被打赏50分 | |
【FRDM-MCXA156评测】4、CAN loopback模式测试被打赏50分 | |
【CPKcorRA8D1评测】--搭建初始环境被打赏50分 | |
【FRDM-MCXA156评测】3、使用FlexIO模拟UART被打赏50分 | |
【FRDM-MCXA156评测】2、rt-thread MCXA156 BSP制作被打赏50分 |