基于S3C2440的linux-3.6.6移植——内核移植,建立自己的平台系统
来源:互联网 发布:淘宝靠谱二手手机店铺 编辑:程序博客网 时间:2024/05/17 05:05
1.在下面的网站内下载目前最新的稳定版本的linux内核——linux-3.6.6
http://www.kernel.org/
2.解压到当前目录
tar –xvjf linux-3.6.6.tar.bz2
3.修改在根目录下的Makefile文件中的第195行和第196行:
ARCH ?=arm
CROSS_COMPILE ?= arm-linux-
4.修改机器码,要与uboot中所设置的机器码一致,在arch/arm/tools目录下的mach-types文件中的第207行添加:
zhaocj2440 MACH_ZHAOCJ2440 ZHAOCJ2440 1008
5.在arch/arm/mach-s3c24xx目录下
复制mach-mini2440.c文件为mach-zhaocj2440.c文件:
cp mach-mini2440.c mach-zhaocj2440.c
把mach-zhaocj2440.c文件内的所有MINI改为ZHAOCJ,把mini改为zhaocj
第246行中的zhaocj2440_default_nand_part结构体改为:
/* NAND Flash on ZHAOCJ2440 board */
static struct mtd_partition zhaocj2440_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",
.size = SZ_2M,
.offset = SZ_4M+ SZ_2M,
},
[3]= {
.name = "root",
.offset = SZ_8M,
.size = MTDPART_SIZ_FULL,
},
};
在该目录下,在Makefile文件中的第78行处添加:
obj-$(CONFIG_MACH_ZHAOCJ2440) += mach-zhaocj2440.o
仍然是在该目录,在Kconfig文件中的第467行处添加:
config MACH_ZHAOCJ2440
bool "ZHAOCJ2440 development board"
select S3C_DEV_NAND
select S3C_DEV_USB_HOST
help
Say Y here to select support for the ZHAOCJ2440
6.在drivers/mtd/nand目录下的s3c2410.c文件内,第846行中的NAND_ECC_SOFT改为NAND_ECC_NONE,即:
chip->ecc.mode = NAND_ECC_NONE;
7.在arch/arm/configs目录下,复制mini2440-defconfig文件为zhaocj2440-defconfig文件,并把第21行中的CONFIG_MACH_MINI2440=y 修改为:
CONFIG_MACH_ZHAOCJ2440 = y
8.退回到linux-3.6.6的根目录下,复制配置文件:
cp arch/arm/configs/zhaocj2440_defconfig .config
9.使用menuconfig来配置内核:
make menuconfig
不用修改里面的任何内容,保存退出即可。
10.最后执行下面两个命令:
make clean
make zImage
等待一段时间后,便会在arch/arm/boot/目录下生成zImage文件。
- 基于S3C2440的linux-3.6.6移植——内核移植,建立自己的平台系统
- 基于S3C2440的linux-3.6.6移植——内核移植,建立自己的平台系统
- 基于S3C2440的Linux-3.6.6移植——ADC的移植
- 基于S3C2440的Linux-3.6.6移植——DM9000网卡驱动移植
- 基于S3C2440的Linux-3.6.6移植——声卡移植
- 基于S3C2440的Linux-3.6.6移植——基于UVC的USB摄像头移植及视频显示
- 基于S3C2440的Linux-3.6.6移植——基于UVC的USB摄像头移植及视频显示
- Linux平台基于S3C2440的MPlayer的移植
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作
- 基于S3C2440的Linux内核移植和yaffs2文件系统制作--启动系统
- 基于S3C2440的Linux-3.6.6移植 PWM蜂鸣器驱动
- 基于S3C2440的Linux-3.6.6移植——定时器的应用
- 在 Ubuntu 12.04 安装 Sun Java
- IOS本地推送处理
- 附加进程调试
- cocos2dx 自学知识点之六 使用cocosbuild,需要注意的问题
- 看看一个小时能Install CUDA 5 on Ubuntu 12.04 LTS
- 基于S3C2440的linux-3.6.6移植——内核移植,建立自己的平台系统
- [DSP(TI)]dm642的优化
- In App Purchase 详细介绍
- Extjs4前端开发代码规范参考
- 关于TI 6000系列DSP优化经验
- 解决打开应用评分报错问题
- 函数指针数组
- 解决 CoreText去除换行符的问题
- hdu1086 You can Solve a Geometry Problem too