linux-2.6.18 基于arm 架构下的移植
1、首先要修给的就是主目录下的Makefile
176 ARCH ?=$(SUBARCH)
177 CROSS_COMPILE ?=
修给如下:
176 ARCH ?=arm
177 CROSS_COMPILE ?=/armtools/bin/bin-linux-
2、修给分区信息
这个的根据你板子上设定的改了 如果是vivi引导的话
可以用part show 的到他的分区信息
然后修改
arch/arm/mach-s3c2410/common-smdk.c
/* NAND parititon from 2.4.18-swl5 */
static struct mtd_partition smdk_default_nand_part[] = {
[0] = {
.name = "Boot Agent",
.size = SZ_16K,
.offset = 0,
},
[1] = {
.name = "S3C2410 flash partition 1",
.offset = 0,
.size = SZ_2M,
},
[2] = {
.name = "S3C2410 flash partition 2",
.offset = SZ_4M,
.size = SZ_4M,
},
[3] = {
.name = "S3C2410 flash partition 3",
.offset = SZ_8M,
.size = SZ_2M,
},
[4] = {
.name = "S3C2410 flash partition 4",
.offset = SZ_1M * 10,
.size = SZ_4M,
},
[5] = {
.name = "S3C2410 flash partition 5",
.offset = SZ_1M * 14,
.size = SZ_1M * 10,
},
[6] = {
.name = "S3C2410 flash partition 6",
.offset = SZ_1M * 24,
.size = SZ_1M * 24,
},
[7] = {
.name = "S3C2410 flash partition 7",
.offset = SZ_1M * 48,
.size = SZ_16M,
}
};
修给成自己开发板上对应的分区信息 也不一定是7个 板子上分了几个就是几个别的可以注释了就可以了
第三步:内核通过 BootLoader把数据写入NAND Flash,而vivi的ECC效验算法和
内核的不同,内核的效验码是由NAND Flash控制器产生的,所以在此必须禁用
NAND Flash ECC。所以我们就要修改 drivers/mtd/nand/s3c2410.c 这个文件。
将
中的 chip->ecc.mode = NAND_ECC_SOFT ,改为如下 chip->ecc.mode =
NAND_ECC_NONE。
好了 到这里修给就基本完成了
然后就是 make menuconfig
在 make
但是大家一定要注意内核配置的选项也的注意这选 要不然编译可就要出错了哦
阅读(1178) | 评论(0) | 转发(0) |