FL2440移植LINUX-3.4.2(四)-- 添加支持YAFFS文件系统

本文介绍如何修改MTD驱动源码以支持YAFFS2文件系统,并提供了两种获取YAFFS2的方法。详细步骤包括修改源码、配置内核选项及编译内核等。

1.修改 MTD 驱动源码以支持 yaffs 文件系统

在/drivers/mtd/nand/s3c2410.c的846行
修改
chip->ecc.mode        = NAND_ECC_SOFT;

chip->ecc.mode        = NAND_ECC_NONE;    /* by zhutao */


2.获得yaffs
方法1):(这个版本的yaffs2没有成功)
官网
http://www.yaffs.net/download-yaffs-using-git

获得命令:
git clone git://www.aleph1.co.uk/yaffs2

之前先安装git命令:
sudo apt-get install git

方法2):
进入
http://www.aleph1.co.uk/gitweb?p=yaffs2.git;a=shortlog
点击:snapshot
下载下面这个版本。(最新版有问题)
2014-06-18     Charles Manning    Update to support Linux 3.14/3.15     commit | commitdiff | tree | snapshot

tar xvzf yaffs2-4e188b0.tar.gz -C /home/chris/temp


3.移植 yaffs2 文件系统

所谓移植移植 yaffs2 文件系统实际上就是项 linux 内核添加 yaffs2 文件系统。
向内核添加一个文件系统(或驱动)一般分为三步:
1)添加源文件到内核源码中(打补丁);
2)修改内核相关 kconfig 文件,方便文件系统的 配置;
3)修改内核相关 kbulid makefile 文件,将 yaffs2 文件系统源码目录编译进内核;

YAFFS2使用方法:
cd yaffs-dir
./patch-ker.sh c m linux-tree

例如:
cd /home/chris/temp/yaffs2
./patch-ker.sh c m /home/chris/temp/linux-3.4.2



4.配置内核:

│   Location:                                                                                                                             │  
  │     -> File systems                                                                                                                     │  
  │       -> Miscellaneous filesystems (MISC_FILESYSTEMS [=y])
 │                               <*>   yaffs2 file system support                                                                      │ │  
  │ │                               -*-     512 byte / page devices                                                                       │ │  
  │ │                               [ ]       Use older-style on-NAND data format with pageStatus byte (NEW)                              │ │  
  │ │                               [*]         Lets yaffs do its own ECC                                                                 │ │  
  │ │                               [ ]           Use the same ecc byte order as Steven Hill's nand_ecc.c (NEW)                           │ │  
  │ │                               -*-     2048 byte (or larger) / page devices                                                          │ │  
  │ │                               [*]       Autoselect yaffs2 format (NEW)                                                              │ │  
  │ │                               [ ]       Disable yaffs from doing ECC on tags by default (NEW)   
         
5.编译内核
make zImage

转载于:https://www.cnblogs.com/chrispauls/p/4018879.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值