注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

还东国的博客

行之苟有恒,久久自芬芳

 
 
 

日志

 
 

嵌入式开发实战4——内核的编译之五YAFFS2的支持  

2012-06-11 21:34:06|  分类: ARM开发 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |
 

嵌入式开发实战4——内核的编译之五YAFFS2的支持

 

今天接着内核的配置编译,现在主要是进行驱动的移植了,首先是对YAFFS2文件系统的支持移植相应驱动。前面安装了GIT不是白安的。

#git  clone git://www.aleph1.co.uk/yaffs2

使用上面的命令下载源码,可惜网速不知道为啥慢得出奇,竟然用了足足有二十来分钟才下完了3.45M的一个源文件。

然后进入这个文件夹:

[root@localhost]# cd yaffs2

./patch-ker.sh  c m /home/fjf/linux/linux2.6.32.2

注意上面的两个参数,如果只有第一个C,那么会报下面的一个错误:

usage:  ./patch-ker.sh  c/l m/s kernelpath
if c/l is c, then copy. If l then link
if m/s is m, then use multi version code. If s then use single version code

它的意思是说如果是C是拷贝,L是链接,M是多版本,S是单一版本。加上m后,程序会出现:

Updating /root/linux-test/linux-2.6.32.2/fs/Kconfig
Updating /root/linux-test/linux-2.6.32.2/fs/Makefile

说明你的补丁打好了。此时你到LINUX源文件的FS目录下,会发现YAFFS2这个文件夹,说明你的补丁成功的打到了源码上。

   

上面的命令其实是执行了下面的几个步骤,如果你实在无法执行成功命令,也可以手动执行下面的过程,一样的结果。

1、修改内核文件/fs/Kconfig,增加下面两行(在177行附近):

if MISC_FILESYSTEMS

source "fs/adfs/Kconfig"
       source "fs/affs/Kconfig"
       source "fs/ecryptfs/Kconfig"
        source "fs/hfs/Kconfig"
       source "fs/hfsplus/Kconfig"
       source "fs/befs/Kconfig"
       source "fs/bfs/Kconfig"
       source "fs/efs/Kconfig"
        source "fs/yaffs2/Kconfig"
       source "fs/jffs2/Kconfig"
      # UBIFS File system configuration

2、修改内核文件/fs/Makefile,增加下面两行(在129行附近):

obj-$(CONFIG_GFS2_FS)           += gfs2/
        obj-$(CONFIG_EXOFS_FS)          += exofs/
        obj-$(CONFIG_YAFFS_FS)  += yaffs2/

3、在内核文件的fs目录下创建yaffs2子目录,然后复制如下文件:

将yaffs2源码目录下的Makefile.kernel文件复制为内核fs/yaffs2/Makefile文件。

将yaffs2源码目录下的Kconfig文件复制为内核fs/yaffs2/目录下。

将yaffs2源码目录下的*.c、*.h文件(不包括子目录下的文件)复制为内核fs/yaffs2/目录下。

 

下面进入LINUX顶层目录:

使用命令:make menuconfig

进入配置界面:

找到“File Systems”回车进入,找到“Miscellaneous filesystems”(杂项文件系统或者说其它文件系统),找到“YAFFS2 file system support”,按一次回车是M,按两次是个*,前者表示编译成模块,后者表示编译进内核,我们使用后者。记着退出配置界面是选择SAVE。

下面进入LINUX顶层目录:

使用命令:make menuconfig

进入配置界面:

找到“File Systems”回车进入,找到“Miscellaneous filesystems”(杂项文件系统或者说其它文件系统),找到“YAFFS2 file system support”,按一次回车是M,按两次是个*,前者表示编译成模块,后者表示编译进内核,我们使用后者。

然后回到顶层目录:make zImage

这回因为MAKEFILE检查只有增加了YAFFS2这个模块,所以编译速度快,有三分钟左右就OK了。

下来当然就是烧写,还是老规矩,回头再烧进板子。

  评论这张
 
阅读(685)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2017