Chinaunix首页 | 论坛 | 博客
  • 博客访问: 408937
  • 博文数量: 61
  • 博客积分: 2138
  • 博客等级: 大尉
  • 技术积分: 882
  • 用 户 组: 普通用户
  • 注册时间: 2008-09-07 11:58
文章分类

全部博文(61)

文章存档

2012年(1)

2011年(8)

2010年(12)

2009年(6)

2008年(34)

我的朋友

分类: LINUX

2008-09-11 20:00:25

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
但是大家一定要注意内核配置的选项也的注意这选  要不然编译可就要出错了哦   
 
 
阅读(1139) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~