linux内核移植(sc)

linux内核移植(sc)

ID:22757873

大小:92.51 KB

页数:20页

时间:2018-10-31

linux内核移植(sc)_第1页
linux内核移植(sc)_第2页
linux内核移植(sc)_第3页
linux内核移植(sc)_第4页
linux内核移植(sc)_第5页
资源描述:

《linux内核移植(sc)》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、linux-2.6.35.3内核移植(s3c2440)忙乎了一个下午,总算忙乎出来了,不过前期大量的搜索工作别人已经完成。学习一下!!!宿主机:Fedora13目标机:s3c2440交叉编译器:arm-linux-gcc-3.4.1交叉编译器路径:/usr/local/arm/3.4.1要移植的内核版本:linux-2.6.35.3文件系统类型:yaffs2一、准备工作1、下载解压内核从官网上下载linux-2.6.35的内核,ftp://ftp.kernel.org/pub/linux/kernel/v2.6/,文件不大,约85M。新建一个工作目录s3c

2、2440,将内核源码包拷贝至工作目录下,再解压。2、移植yaffs2驱动下载最新的驱动http://www.aleph1.co.uk/cgi-bin/...fs2.tar.gz?view=tar 解压在工作目录s3c2440下进入yaffs2: cdyaffs2 给内核打补丁:./patch-ker.sh c../linux-2.6.34 成功后打印信息:Updating/file/fl/linux-2.6.34/fs/Kconfig             Updating/file/fl/linux-2.6.34/fs/Makefile问题:1、什么是

3、补丁?一个补丁就是一个文本文档,这个文档包含了在两个不同版本的源代码树之间的变化。补丁是通过diff应用程序来创建的。为了正确地打上一个补丁,你需要知道这个补丁是从哪个基础版本产生出来的以及这个补丁将要把目前的源代码树变化到什么新的版本。这些信息或者会出现在补丁文件的原数据中,或者可能从文件名中推断出来。 2、为什么要给内核打补丁?因为该内核暂不支持yaff2的文件系统,打上补丁使之支持。3、安装交叉编译环境从http://www.handhelds.org/download/projects/toolchain/下载arm-linux-gcc-3.4.1

4、.tar.bz2解压之,su       tar vxjf arm-linux-gcc-3.4.1.tar.bz2将交叉编译器安装到/usr/local/下。值得注意的是:该/usr/local目录并不是Fedora系统根录下的/usr/local,而是刚刚生成的/usr/local目录。这个一点要注意,否则浪费了时间不说,也破坏了Linux系统。二、移植 1、修改机器码飞凌开发板的bootloader默认的机器码是193,所以我们在使用smdk2440机器的时候,需要修改机器码。修改内核2.6.35.3中的arch/arm/tools/mach-type

5、s。删掉s3c2410   ARCH_S3C2410  S3C2410  182 然后将s3c2440   ARCH_S3C2440  S3C2440  362 修改为s3c2440   ARCH_S3C2440  S3C2440  1932、指定目标板machine、编译器和编译器路径修改linux-2.6.35.3/Makefile,将ARCH        ?=$(SUBARCH) CROSS_COMPILE    ?= 修改成ARCH        ?=arm CROSS_COMPILE    ?=/usr/local/arm/3.4.1/bin/

6、arm-linux- 注意:CROSS_COMPILE是指交叉编译器的路径,该路径一定要完整,比如本人的是:/home/kelvin/usr/local/arm/3.4.1/bin/arm-linux- 这个/home/kelvin就不能少,否则最后makezImage时提示文件不存在。3、增加devfs文件管理器的支持我们所用的文件系统使用的是devfs文件管理器。修改fs/Kconfig,找到menu"Pseudofilesystems"添加如下语句:configDEVFS_FS     bool"/devfilesystemsupport(OBSOL

7、ETE)"     defaulty  configDEVFS_MOUNTbool"Automaticallymountatboot"defaultydependsonDEVFS_FS 帮助理解:Kconfig就是对应着内核的配置菜单。假如要想添加新的驱动到内核的源码中,能够修改Kconfig,这样就能够选择这个驱动,假如想使这个驱动被编译,要修改Makefile。4、修改晶振频率( 可解决打印信息乱码问题 )文件:arch/arm/mach-s3c2440/mach-smdk2440.c /*s3c24xx_init_clocks(16934400);*

8、/  s3c24xx_init_clocks(12000000);

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。