嵌入式应用开发案例分析报告.doc
文本预览下载声明
重庆科技学院
《嵌入式应用开发案例分析
大作业
学 院:_电气与信息工程学院_ 专业班级: 计科09-02
学生姓名: 付作辉 学 号: 2009441644
设计地点(单位)__ I315___ __ ________ __设计题目:__ Linux2.6内核和文件系统移植_ _ _____
完成日期:2012 年 6 月 20 日
指导教师评语: ______ _____________ ___ _____ ____ ____
成绩(五级记分制):______ __ ________ 指导教师(签字):________ _______ _
目录
一、平台环境 3
1 移植环境 3
2 移植源代码 3
二、u-boot移植 3
1 与指定平台无关文件的删减 3
2 建立自己的目标板系统 3
2.1 建立自己的目标板 3
2.2 编译测试 4
3增加对S3C2440的支持 4
3.1 修改SDRAM配置 4
3.2 时钟设置 4
4 配置Nor Flash 17
5 增加Nand Flash读写驱动 18
三、linux内核移植 19
四、文件系统移植 21
1 编译busybox 21
2 创建根文件系统必要的目录 21
3、创建必要文件 21
3.1 获取库文件 21
3.2 拷贝目录 21
3.3 创建设备文件 22
4 几个必要文件的修改 22
5 制作yaffs2根文件系统镜像 25
6 挂载nfs文件系统 25
五、总结 27
一、平台环境
移植linux系统分为三个部分。第一部分移植uboot,第二部分移植linux内核,第三部分移植文件系统。
1 移植环境
交叉编译器:crosstools_4.4.3_softfloat
CPU:S3C2440(tq2440)
SDRAM:64M
Nor Flash:2M
NAND Flash:512M
网卡:DM9000
LCD: 480*272
2 移植源代码
u-boot-2010.09
ftp://ftp.denx.de/pub/u-boot/
linux-.tar.bz2
/pub/linux/kernel/v2.6/
文件系统使用天嵌开发板提供的源码包,在上面做修改。
光盘\TQ2440_CD\Linux资源\Linux源码包二、u-boot移植
u-boot移植主要包括norflash移植,nandflash移植和DM9000网卡移植以及一些必要的配置。
1 与指定平台无关文件的删减
删除arch目录下除arm目录以外的所有目录,arm\cpu目录下除arm920tmulu以外的所有目录,arch\arm\cpu\arm920t目录下除s3c24x0目录以外的所有目录(该目录下的文件不要删),arch\arm\include\asm目录下除arch-s3c24x0目录以外的所有arch-xxxx目录(该目录下的文件不要删)
删除board目录下除samsung目录以外的所有目录,board\samsung目录下除smdk2410目录以外的所有目录
删除include\configs目录下除smdk2410.h文件以外的所有头文件。
2 建立自己的目标板系统
2.1 建立自己的目标板
将board\samsung\smdk2410目录复制为fzh2440目录,进入fzh2440目录。
修改smdk2410.c为fzh2440.c
修改Makefile文件中的COBJS改为:COBJS := fzh2440.o flash.o
建立目标板配置文件:进入include\configs目录下,将smdk2410.h复制为fzh2440.h
修改顶层(u-boot-2010.09目录)Makefile 文件3045行,增加:
fzh2440_config: unconfig
@$(MKCONFIG) $(@:_config=) arm arm920t fzh2440 NULL s3c24x0
配置交叉编译器:修改顶层(u-boot-2010.09目录)Makefile 文件159行,修改:
ifeq ($(HOSTARCH),$(ARCH))
CROSS_COMPILE=/opt/EmbedSky/crosstools_3.4.5_softfloat/gcc-3.4.5-glibc-2.3.6/arm-linux/bin/arm-linux-也可以选
显示全部