分享

Linux 2.6.37内核移植到Mini2440(一)

 败败0619 2012-07-05

Linux 2.6.37内核移植到Mini2440(一)

                        Linux 2.6.37内核移植到Mini2440(一)

 一、        平台说明

1.       主机环境

Fedora 9  .6.33.3-85.fc13.i686.PAE   2GB SDRAM

2.       目标机环境

n          开发板:       Mini2440           S3C2440A-40

n          Nor Flash:       SST39VF1601   2MB

n          NAND Flash: k9f2g08u0B       256MB

n          SDRAM:          HY57v561620    64MB

n          内核:           linux-2.6.37

n          Bootloader:    u-boot-2009.11

3.       交叉链

arm-none-linux-gnueabi-gcc (ctng-1.6.1) 4.4.3(mini2440开发板自带)

arm-inux-4.4.3

二、     下载内核:

1)      linux-2.6.37.tar.bz2

2)      解压linux-2.6.37.tar.bz2到如:/mywork/kernel

3)      进入linux-2.6.37文件夹

4)      修改交叉编译器

在内核根目录下,编辑Makefile,找到ARCH=。。。修改为如下内容。注意,行后面的//是注释,不要输入!

【技巧】为了让vi中显示行号,执行如下命令即可:

#echo  “set  nu ”>~/.vimrc

#vi Makefile

ARCH                        ?= arm

CROSS_COMPILE    ?= arm-linux-                        //这个是交叉编译工具

保存退出

5)        生成默认.config配置文件

说明,在内核代码移植到时候,常常指定文件夹为/的什么,这里的根是指内核文件夹的根。

可以通过复制arch/arm/configs/mini2440_defconfig生成.config,或执行如下命令生成。

#cp  arch/arm/configs/mini2440_defconfig  .config   //此方法可能行不通

#make  mini2440_defconfig       

【说明】如果配置乱套了,想重新配置,可以执行如下命令,重新从该步骤开始:

#make distclean                                 //清除所有的配置,并删除.config。慎用!

6)        测试编译

#make                  //30分中左右

7)        生成uImage映像

./mkimage -A arm -T kernel -C none -O linux -a 0x30008000 -e 0x30008040 -d zImage -n 'jyb365_linux' kernel_uImage

上面的mkimage 是u-boot生成的。在u-boot下的/tools下。zImage是编译Linux内核产生的,在内核根下。uImage是u-boot中烧写的内核压缩映象。

zImage)所在位置 linux-2.6.37 /arch/arm/boot/zImage

zImage拷贝到linux-2.6.37 /

mkimage)所在位置U盘或者网上下载移到linuxlinux-2.6.37 文件夹下一定别忘给它权限哦(chmod 755 mkimage

Make

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多