记录17--s3c2440移植linux

1.解压到当前目录

tar –xvjf linux-3.6.6.tar.bz2

2.修改在根目录下的Makefile文件中的第195行和第196行:

ARCH ?=arm
CROSS_COMPILE ?= arm-linux-

3.修改机器码,要与uboot中所设置的机器码一致,在arch/arm/tools目录下的mach-types文件中的第207行添加:

zk2440 MACH_ZK2440 ZK2440 1008

4.在arch/arm/mach-s3c24xx目录下

复制mach-mini2440.c文件为mach-zk2440.c文件:

cp mach-mini2440.c mach-zk2440.c


把mach-zk2440.c文件内的所有MINI改为ZK,把mini改为zk

 

第246行中的zk2440_default_nand_part结构体改为:

/* NAND Flash on ZK2440 board */
 
static struct mtd_partition zk2440_default_nand_part[] __initdata = {
[0]= {
.name = "u-boot",
.size = SZ_512K,
.offset = 0,
},
[1]= {
.name = "u-boot-env",
.size = SZ_512K,
.offset = SZ_512K,
},
[2]= {
.name = "kernel",
.offset = SZ_2M,
.size = SZ_4M+ SZ_2M,
},
[3]= {
.name = "root",
.offset = SZ_8M,
.size = MTDPART_SIZ_FULL,
},
};

在该目录下,在Makefile文件中的第78行处添加:

obj-$(CONFIG_MACH_ZK2440) += mach-zk2440.o

仍然是在该目录,在Kconfig文件中的第467行处添加:

config MACH_ZK2440
bool "ZK2440 development board"
select S3C_DEV_NAND
select S3C_DEV_USB_HOST
help
Say Y here to select support for the ZK2440

5.在drivers/mtd/nand目录下的s3c2410.c文件内,第846行中的NAND_ECC_SOFT改为NAND_ECC_NONE,即:

chip->ecc.mode = NAND_ECC_NONE;

6.在arch/arm/configs目录下,复制mini2440-defconfig文件为zk2440-defconfig文件,并把第21行中的CONFIG_MACH_MINI2440=y 修改为:

CONFIG_MACH_ZK2440 = y


7.退回到linux-3.6.6的根目录下,复制配置文件:

cp arch/arm/configs/zk2440_defconfig .config


8.使用menuconfig来配置内核:

make menuconfig

不用修改里面的任何内容,保存退出即可。


9.最后执行下面两个命令:

make clean
make zImage


等待一段时间后,便会在arch/arm/boot/目录下生成zImage文件。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值