首页 | 新闻 | 交流 | 问吧 | 文档 | 手册 | 下载 | 博客

Linux2.6.36/37下移植yaffs2

作者:  时间: 2011-06-10

yaffs2 老版本不支持2.6.36以上内核。 网上下载的yaffs2常见版本(点击http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/下方的Download GNU tarball进行下载)一般不支持2.6.36/37。但2.6.36一下版本依然可以使用。

        最新的yaffs2采用git发布,利用git工具下载到最新的yaffs2源代码,即可支持。办法是使用到www.yaffs.net发 布的git方法获得最新版,并且查看readme确认其支持2.6.36/37。yaffs有一个较大的变化,是在2.6.36/37内核发布之后的一段 时间里出现的,主要就是patch-ker.sh多了一个参数,m/s 是选择multiversion支持,还是singleversion支持。

=============================================================== 

(1)下载源代码

如果系统已经安装git工具,就直接执行:

git clone git://www.aleph1.co.uk/yaffs2 
如果没有git工具,请首先下载安装git(http://git-scm.com/)。当然,也可以在windows下用git工具下载。

 (2)给内核打补丁

yaffs源代码下载完后,放到某个目录下(但不要放在内核目录下!    )进入yaffs源代码目录:

#cd yaffs2

打补丁:

#./patch-kernel.sh    c    m     ../linux-2.6.37

(3)然后配置内核:

  #cd  ../linux-2.6.37   返回内核根目录

#make menuconfig

File systems -->

Miscellaneous filesystems -->

<*> YAFFS2 file system support

  (4) 重新编译内核

#make

=======================

 需要注意:因为windows中下载导致文件编码和linux的不同。所以,如果是在windows下用git下载并传递到linux下的,则需要修改两个文件的编码:

   (1) 在linux下,进入yaffs2源代码目录

  #vi   patch-kernel.sh

   然后在vi中执行如下命令:

 :set  ff=unix

保存退出

然后修改权限使patch-kernel.sh具有可执行权限:

#chmod   755  patch-kernel.sh

 (3)修改fs/yaffs2/Kconfig的编码

 #vi  fs/yaffs2/Kconfig

在vi中执行命令:

:set  ff=unix

保存退出