Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2088604
  • 博文数量: 288
  • 博客积分: 10594
  • 博客等级: 上将
  • 技术积分: 3469
  • 用 户 组: 普通用户
  • 注册时间: 2006-10-27 19:27
文章分类

全部博文(288)

文章存档

2012年(4)

2011年(30)

2010年(40)

2009年(32)

2008年(71)

2007年(79)

2006年(32)

分类: LINUX

2007-12-21 02:52:38

关于linux2.6.21 kernel移植到AT91SAM9261EK上,由于有前面移植linux2.6.20 kernel RM9200EK的经验,所以基本上没有太大的改动,都是照前面的步骤去做的。

 

首先:交叉编译工具arm-linux-gcc-3.4.1 已经安装,直接从网上下载源码和补丁

linux-2.6.21.tar.bz2   2.6.21-at91.patch.gz

 

其次:解压缩上面的文件

$ tar jxvf linux-2.6.21.tar.bz2

$ cp 2.6.21-at91.patch.gz /linux-2.6.21

$ cd linux-2.6.21

$ zcat 2.6.21-at91.patch.gz | patch –p1

 

修改linux-2.6.21目录下的Makefile 文件

ARCH            ?=$(SUBARCH)
CROSS_COMPILE    ?=

 改成:
 ARCH    = arm
 CROSS_COMPILE =/usr/local/arm/3.4.1/bin/arm-linux-

 

$ cp arch/arm/configs/at91sam9261ek_defconfig /.config

$ make clean

$ make zImage

 

 

制作uImage文件

$ /usr/local/arm/3.4.1/bin/arm-linux-objcopy –O binary –S vmlinux linux.bin

$ gzip –v9 linux.bin

$./mkimage –A arm –O linux –T kernel –C gzip –a 0x20008000 –e 0x20008000 –d linux.bin.gz uImage

 

制作ramdisk

只需要将移植9200ek板子上的ramdisk.gz文件解压缩,然后mount/mnt目录下,将文件中的9200替换为9261即可,具体步骤如下:

# gunzip ramdisk.gz

# mount –o loop ramdisk /mnt

# cd /mnt

issue文件中的9200替换为9261

 

init.d目录下的rcS文件中的9200替换为9261

# cd ..

# umount /mnt

进入原ramdisk所在的目录

# gzip –v9 ramdisk

即可得到ramdisk.gz

以上文档也适用于将Linux-2.6.20内核移植到AT91RM9261-EK

阅读(1550) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~