移植Linux2.6.25内核到mini2440s3c2440
注:尊重他人劳动果实,以下转自jiajingtao126网友的百度空间
Linux内核移植移植Linux2.6.25内核到mini2440/s3c2440详解2009-04-28 10:45空闲时间做了内核的移植工作,将Linux2.6.25内核移植到mini2440,下面是我成功移植后总结的笔记,希望对初学此方面的博友有帮助。
一.开发环境的建立
1.系统为VMware5.5 + Red Hat Linux 9.0
2.交叉编译器版本为arm-Linux-gcc-3.4.5
在命令行执行:
cd /xx/xx/xx/ "此目录为你暂时存放编译器压缩文件的目录"
tar zxvf arm-Linux-gcc-3.4.5.tgz -C /,将编译器解压并安装到/usr/local/arm目录中(具体解压到哪个目录要看你压缩包的原目录是什么了,你也可以指定目录)。
二.移植内核
1.下载内核源码到下面网站下载:http://www.kernel.org/
2.建立工作目录
在命令行执行:mkdir –p /opt/FriendlyARM/mini2440
此目录是我的工作目录,名称你可以随意修改,如果修改下面的路径也需要做相应的修改
3.解压系统源码
假如将内核源码存放在/xx/xx/ 下面。则执行:
cd /xx/xx/
tar jxvf(如果以gzip方式压缩的则为zxvf)Linux-2.6.25.tar.bz2 –C /opt/FriendlyARM/mini2440/,将其解压到PC 的“/opt/FriendlyARM/mini2440/”目录下。
4、在系统中添加对ARM 的支持及设置好编译器
进到内核源码:cd /opt/FriendlyARM/mini2440/Linux-2.6.25.8
修改顶层“Makefile ”文件,
ARCH ? =arm
CROSS_COMPILE ?=/usr/local/arm/3.4.5/bin/arm-Linux- 然后保存。
5、修改平台输入时钟
修改平台的时钟频率,修改内核源码“arch/arm/machs3c2440/
mach-smdk2440.c”,把16934400 改为12000000,因为我们的开发板上为12M
6、修改机器类型ID号
Supervivi的机器码是782,所以这里需要修改机器码,否则会出现不能启动的
情况。修改内核源码的“arch/arm/tools/mach-types”文件,在大概379 行,把原来的362 改为782
7、Nand Flash 驱动移植
Linux 里面已经做好了Nand Flash 的驱动,我们只需要进行简单的修改即可
以使用了。
1.修改内核源码“arch/arm/plat-s3c24xx/common-smdk.c”文件,这个是NAND FLASH分区的信息。
内核MTD分区必须与vivi分区相一致。因为,vivi分区中的地址是引导程序、内核映像及文件系统下载到Nand Flash的真正地址;而内核启动时,内核并不是去读vivi分区中
Linuxidc免责声明:本文仅代表作者个人观点,与安科网无关。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。