硬件环境:TQ2440   软件环境:linux-2.6.30.4

下载源码:ftp://ftp.kernel.org/pub/linux/kernel/v2.6/linux-2.6.30.4.tar.bz2

步骤:

1.在系统中添加对arm的支持:

修改内核根目录下的Makefile,ARCH=arm,CROSS_COMPILE=arm-linux-

2.修改系统时钟:

修改内核源码“arch-arm-mach-s3c2440/mach-smdk2440.c”,把 s3c24xx_init_clocks(16934400); 换成s3c24xx_init_clocks(12000000);

3. 修改机器码:

把s3c2440对应的机器码由362改为168

4.Nand Flash 驱动移植:

修改内核源码“arch/arm/plat-s3c24xx/common-smdk.c”文件,将结构体数组名为 smdk_default_nand_part改为:

static struct smdk_default_nand_part [] = {

[0] = {
.name = "My_Board_uboot",
.size =0x00040000,
.offset = 0x00000000,
},
[1] = {
.name = "My_Board_kernel",
.offset = 0x00200000,
.size =0x00300000,
},
[2] = {
.name = "My_Board_yaffs2",
.offset = 0x00500000,
.size =MTDPART_SIZ_FULL,
},

};

在这个文件里修改结构体smdk_nand_info:

static struct s3c2410_platform_nand smdk_nand_info = {
.tacls= 10,
.twrph0= 25,
.twrph1= 10,
.nr_sets= ARRAY_SIZE(smdk_nand_sets),
.sets= smdk_nand_sets,
};

最后修改" drivers/mtd/nand/s3c2410.c" :

chip->ecc.mode  = NAND_ECC_NONE;

配置内核添加上对Nand Flash 支持的配置选项,然后编译烧写后可以发现分区信息,但是这时候还不能正常启动内核,因为系统还不支持yaffs2文件系统,下一节来构建文件系统。

移植linux(1)的更多相关文章

  1. 为AM335x移植Linux内核主线代码

    /********************************************************************** * 为AM335x移植Linux内核主线代码 * 说明: ...

  2. 引用 移植Linux到s3c2410上

    引用 bsky 的 移植Linux到s3c2410上来源:http://www.embed.com.cn/downcenter/Article/Catalog12/4000.htm 移植Linux到s ...

  3. Xilinx zynq-7000系列FPGA移植Linux操作系统详细教程

    Xilinx zynq-7000系列FPGA移植Linux操作系统详细教程 一:前言 最近手上压了一块米联客的Miz7035,一块xilinx zynq-7000系列的开发板,想着正好学习一下linu ...

  4. AM335x移植linux内核_转

    AM335x移植linux内核 该博客中详细介绍了移植linux内核到AM335x上相关,设备驱动采用设备树(DT)方式加载,包含设备启动.uboot.kernel.driver.rootfs及简单上 ...

  5. 使用cygwin移植Linux的项目到Windows下之总结(转)

    使用cygwin移植Linux的项目到Windows下之总结(转) 原文 http://my.oschina.net/michaelyuanyuan/blog/68615?p=1   一.why   ...

  6. 在基于or1200处理器的SoC上移植linux

    经历了前端的艰苦奋斗.SoC前端设计已经调试完毕,如今直接进入uboot移植   首先cd入u-boot-master 找到子文件夹include下得de2_115.h文件进行改动: (下一步计划:加 ...

  7. S04_CH01_搭建工程移植LINUX/测试EMMC/VGA

    S04_CH01_搭建工程移植LINUX/测试EMMC/VGA 1.1概述: 本章内容是在已经提供安装了VIVADO2015.4 的ubuntu系统下,进行.大家可以下周我们已经提供的虚拟机镜像,我们 ...

  8. ZYNQ跑系统 系列(二) petalinux方式移植linux

    三.搭建petalinux工程 0.定位目录    先在shell中找一个准备存放工程的地方,(我的是home/hlf/PRO),命令行cd home/hlf/PRO 1.定位编译链    根据安装p ...

  9. 移植Linux Kernel SM750 驱动到VxWorks 7

    一.SM750简介 SM750 是SiliconMotion 推出的一款适合嵌入式设备的显卡(Embedded GPU),采用PCIe接口与CPU连接,内部集成16MB DDR SDRAM显存,产品具 ...

随机推荐

  1. 学生信息管理 --- c语言实现

    第一次写比较大的程序,昨晚看了  大话数据结构  有感-----同样求 1+2+3+4+...+100,我则是简单的从1+2+3+4+...+100. 而不是 (1+100) / 2 * 100;(高 ...

  2. NDK 编译可执行程序

    以Hello Android工程为例. 建立好工程hello-a,在jni目录下创建文件hello-a.c,文件内容如下.(注意是jni目录,使用src目录编译会出错) #include <st ...

  3. ubuntu下安装nodejs

    前言 继前几天在wins环境下使用cygwin模拟器安装nodejs出现了一些问题后,今天我决定在ubuntu下安装nodejs,安装过程非常顺利,没有报错,看来还是linux环境给力啊,由于刚接触l ...

  4. [你必须知道的.NET]第三十二回,,深入.NET 4.0之,Tuple一二

    发布日期:2009.06.01 作者:Anytao © 2009 Anytao.com ,Anytao原创作品,转贴请注明作者和出处. Tuple,是函数式编程的概念之一,早见于Elang.F#等动态 ...

  5. <Win32_1>深入浅出windows消息机制[转自crocodile_]

    上学期学习了Java ,感觉Java写一个窗口真心简单,很易上手,也就难怪很多开发人员选择Java作为自己的开发编程语言.但是由于自身对windows的热爱,让我觉得c.c++语言才是我亲睐的编程语言 ...

  6. Linux多线程之同步3

    需求 客户端将需要解决的task发送给服务器,服务器调用线程来解决客户端发送的task,解决完由线程负责将其发送回客户端.(用管道实现通信) 思路 1. server维护两个列表.一是客户端列表.二是 ...

  7. win10开机密码怎么取消

    win10怎么取消电脑开机密码?比较快捷的方法就是使用netplwiz在WIN2000以后的版本都是适用.最新版的WIN10同样也是适用的.下面我来演示一下win10开机密码怎么取消? 1. WIN1 ...

  8. Android核心分析 之十一Android GWES之消息系统

        Android GWES之Android消息系统                                                                        ...

  9. 使用CSS3制作漂亮的按钮

    我给大家介绍一下如何使用CSS3来制作一个圆角阴影.渐变色的漂亮的按钮,它不需要任何图片和javascript脚本,只需要CSS3就可以轻松实现按钮效果,并且可以适用于任意HTML元素,想div,sp ...

  10. html5 语音搜索

    开始以为是接口什么的,原来这就是语言搜索. 只需要在input加上x-webkit-speech <input type="text" class="text&qu ...