Chinaunix首页 | 论坛 | 博客
  • 博客访问: 879030
  • 博文数量: 149
  • 博客积分: 3671
  • 博客等级: 中校
  • 技术积分: 1701
  • 用 户 组: 普通用户
  • 注册时间: 2010-06-03 16:52
文章分类

全部博文(149)

文章存档

2011年(57)

2010年(92)

分类: 嵌入式

2011-03-13 11:25:54

yaffs2 老版本不支持2.6.36以上内核。 网上下载的yaffs2常见版本(点击下方的进行下载)一般不支持2.6.36/37。但2.6.36一下版本依然可以使用。

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

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

(1)下载源代码

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

git clone git:// 如果没有git工具,请首先下载安装git()。当然,也可以在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

保存退出

阅读(1806) | 评论(4) | 转发(1) |
给主人留下些什么吧!~~

tianchunlong2011-06-07 09:24:55

2909157: 我的问题是,移植后通过mkyaffs2image制作成文件系统后,通过  mtd-utils flash_erase擦除/dev/mtd/mtd4分区,在通过nandwrite工具烧写yaffs2 镜像到/dev/mtd/m.....
不好意思啊。刚看到。不知道你现在解决没?你说的这种方法我没有接触过,不是太清楚。回去我也试试看。

29091572011-06-02 18:45:47

我的问题是,移植后通过mkyaffs2image制作成文件系统后,通过  mtd-utils flash_erase擦除/dev/mtd/mtd4分区,在通过nandwrite工具烧写yaffs2 镜像到/dev/mtd/mtd4分区,但是mount -t yaffs2 /dev/block/mtdblock4 /mnt 总是出错!
# mount -t yaffs /dev/mtd/mtd4  /mnt
mount: mounting /dev/mtd/mtd4 on /mnt failed: No such device

29091572011-06-02 18:41:57

这两天也整弄呢,看看!

yuweixian42302011-04-12 12:02:34


留下 脚印