实验一:嵌入式Linux之我行——Linux-2.6.30.4在2440上的移植之内核

http://blogold.chinaunix.net/u3/101649/showart.php?id=2073912

原博客内容

嵌入式Linux之我行,主要讲述和总结了本人在学习嵌入式linux中的每个步骤。一为总结经验,二希望能给想入门嵌入式Linux的朋友提供方便。如有错误之处,谢请指正。

· 共享资源,欢迎转载:http://hbhuanggang.cublog.cn

一、移植环境

· 主  机:VMWare--Fedora 9

· 开发板:Mini2440--64MBNand

· 编译器:arm-linux-gcc-4.3.2

二、移植步骤

1. 准备工作目录和解压内核源码

。。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。。。。。。

内核所用的NAND Flash分区表不是合法的(不是NAND Flash的block大小(128K)对齐的)。要让内核正确启动,你需要设置内核

使用和supervivi相一致的分区表。可以在supervivi命令行模式下用"part show"命令查看supervivi所用的NAND Flash分区表:

 

name           :       offset          size            flag

------------------------------------------------------------

vivi           :       0x00000000      0x00040000      0

param          :       0x00040000      0x00020000      0

kernel         :       0x00060000      0x00500000      0

root           :       0x00560000      0x3fa80000      0

所以正确应该是:

static struct mtd_partition smdk_default_nand_part[] = {
        [0]= {
                .name  = "vivi",
                .size  = 0x00040000,
                .offset= 0x00000000,
        },
        [1]= {
                .name  = "param",
                .offset= 0x00040000,
                .size  = 0x00020000,
        },
        [2]= {
                .name  = "kernel",
                .offset= 0x00060000,
                .size  = 0x00200000,
        },
        [3]= {
                .name  = "root",
                .offset= 0x00560000,
                .size  = 0x3fd80000,
        },
};

 

。。。。。。。。。。。。。。。。

。。。。。。。。。。。。。。。。。。。

具体参考上面的博客

你可能感兴趣的:(工作,linux,struct,Flash,嵌入式,编译器)