关于内核配置选项中没有yaffs2这个选项问题的解决方案
来源:互联网 发布:互盾数据恢复注册机 编辑:程序博客网 时间:2024/05/20 06:50
从官方网站http://www.aleph1.co.uk/gitweb?p=yaffs2.git;a=summary下载yaffs2源码,解压后给linux3.6.7打补丁:./patch-ker.sh c m /kernel directory,完后看到fs目录下的Kconfig和Makefile文件都有增加yaffs2相关内容;fs目录下也多了yaffs2文件夹。基本上说明打补丁成功了,接下来在linux3.6.7主目录下make menuconfig,找到File Systems--->Miscellaneous filesystem,却没有发现YAFFS2(用的是s3c6400_defconfig)。查看YAFFS2的Kconfig文件,需要先选择MTD_BLOCK才会有显示YAFFS2.
#
# yaffs file system configurations
#
config YAFFS_FS
tristate "yaffs2 file system support"
default n
depends on MTD_BLOCK
select YAFFS_YAFFS1
select YAFFS_YAFFS2
help
yaffs2, or Yet Another Flash File System, is a file system
optimised for NAND Flash chips.
To compile the yaffs2 file system support as a module, choose M
here: the module will be called yaffs2.
If unsure, say N.
Further information on yaffs2 is available at
<http://www.aleph1.co.uk/yaffs/>.
于是去MTD目录下找Kconfig的内容,看到:
config MTD_BLOCK
tristate "Caching block device access to MTD devices"
depends on BLOCK
select MTD_BLKDEVS
---help---
Although most flash chips have an erase size too large to be useful
as block devices, it is possible to use MTD devices which are based
on RAM chips in this manner. This block device is a user of MTD
devices performing that function.
At the moment, it is also required for the Journalling Flash File
System(s) to obtain a handle on the MTD device when it's mounted
(although JFFS and JFFS2 don't actually use any of the functionality
of the mtdblock device).
Later, it may be extended to perform read/erase/modify/write cycles
on flash chips to emulate a smaller block size. Needless to say,
this is very unsafe, but could be useful for file systems which are
almost never written to.
You do not need this option for use with the DiskOnChip devices. For
those, enable NFTL support (CONFIG_NFTL) instead.
也就说需要先选择Device Drivers-->MTD-->Caching block device access to MTD devices,然后才能够在File Systems--->Miscellaneous filesystem下面找到YAFFS2。
保存后make uImage.这时,错误来了:
1.struct super_block(include/fs.h) 缺少成员unsigned char s_dirt;//需要添加
2.struct super_operations (include/fs.h)缺少成员void (*write_super) (struct super_block *);
//需要添加
3.找不到d_alloc_root()函数;//用d_make_root()函数替换
4.找不到end_writeback()函数;//用clear_node( )函数替换
5.找不到struct mtd_info 下面的write,read,erase,sync等等成员;//全部在前面加下划线_write,_read,_erase等等。
改完这些再编译就可以了。
- 关于内核配置选项中没有yaffs2这个选项问题的解决方案
- VC6.0重装后新建选项卡中没有关于MFC工程的选项的解决方案
- 为什么没有(无线网络配置)这个选项
- 解决Eclipse中配置中没有server选项——tomcat配置中遇到的问题
- ADT开发android ndk没有NDK选项问题的解决方案
- windows xp组件中没有IIS选项的解决方案
- 内核配置的重要选项
- 关于pageadmin配置过程中没有安全选项的问题解决方案
- 关于adtbundle中preferences的android选项卡没有NDK设置项的问题
- 关于Eclipse的Team菜单中没有SVN选项的问题
- 解决配置内核后还是出现配置选项的问题
- 解决配置内核后还是出现配置选项的问题
- 解决配置内核后还是出现配置选项的问题
- 关于myeclipse导入maven项目没有选项的问题
- 关于myeclipse导入maven项目没有选项的问题
- idea编译器没有tomcat的选项解决方案
- Tortoisegit的setting中没有remote选项无法配置
- 关于make menuconfig中有些内核选项不显示的问题
- 设置eclipse编译错误加下划线
- android 调用系统中分享功能
- 网络扫描工具Nmap使用教程(1)
- 密码输入框 底下显示的文字方法
- HttpWebRequest的GetRespons偶尔超时、死掉的原因及解决办法
- 关于内核配置选项中没有yaffs2这个选项问题的解决方案
- 高性能服务器架构
- 搜集的最全面的的有关log4j日记的应用
- Delphi TStream 详细介绍
- Java 理论与实践: 正确使用 Volatile 变量
- SEO需要什么样的wordpress插件
- 一个女程序员的心酸和无奈
- 【COCOS2DX-游戏开发之二六】 手游短连接
- Web开发者不容错过的20段CSS代码(1)