最完整的Linux-2.6.32.6内核的移植过程

futurezone 2010-02-24

宿主机:Ubuntu 9.04
目标机:飞凌 2440开发板
交叉编译器:arm-linux-gcc-3.4.1
交叉编译器路径:/usr/local/arm/3.4.1
要移植的内核版本:linux-2.6.32.6
文件系统类型: yaffs2 (目前使用光盘中linux-2.6.28.7的文件系统)
下载解压内核
        首先,从官网上下载linux-2.6.32.6的内核。
        ftp://ftp.kernel.org/pub/linux/kernel/v2.6/可以找到。
        新建目录mkdir /file/fl。将内核源码包拷贝到/file/fl的目录下。
        解压源码包 tar zxvf linux-2.6.32.6.tar.gz

移植yaffs2驱动
下载最新的驱动http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2.tar.gz?view=tar
解压在/file/fl下tar zxvf yaffs2.tar.gz

进入yaffs2,cd yaffs2

给内核打补丁:./patch-ker.sh  c  /file/fl/linux-2.6.32.6

成功后打印信息:Updating /file/fl/linux-2.6.32.6/fs/Kconfig
Updating /file/fl/linux-2.6.32.6/fs/Makefile

修改机器码
飞凌开发板的bootloader默认的机器码是193,所以我们在使用smdk2440机器的时候,需要修改机器码。修改/file/fl/linux-2.6.32.6/arch/arm/tools/mach-types。将:

s3c2410      ARCH_S3C2410    S3C2410    193

注释掉。然后将:

s3c2440      ARCH_S3C2440    S3C2440    362

修改机器码
飞凌开发板的bootloader默认的机器码是193,所以我们在使用smdk2440机器的时候,需要修改机器码。修改/file/fl/linux-2.6.32.6/arch/arm/tools/mach-types。将
s3c2410      ARCH_S3C2410    S3C2410    193
注释掉。然后将
s3c2440      ARCH_S3C2440    S3C2440    362

修改为 

s3c2440      ARCH_S3C2440    S3C2440    193

相关推荐