Chinaunix首页 | 论坛 | 博客
  • 博客访问: 41870
  • 博文数量: 42
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 32
  • 用 户 组: 普通用户
  • 注册时间: 2014-10-30 10:34
文章分类
文章存档

2014年(42)

我的朋友

分类: LINUX

2014-11-19 19:07:30

Linux内核中还不支持yaffs2文件系统,需要给内核打上yaffs2补丁。
关于yaffs2的补丁一定要使用最新的,因为kernel版本是比较新的,对老版本的yaffs2不支持
费了好大力气才弄到可用的yaffs2源码,但也要修改一下代码以适应新版的kernel,代码在XC2440光盘中。

将光盘资料中的yaffs2.tar.bz2源码包解压到内核源码的fs目录下,修改fs目录下的Makefile和Kconfig文件。

Kconfig:
  1. if MISC_FILESYSTEMS
  2. ……
  3. source "fs/efs/Kconfig"

  4. # Patched by YAFFS
  5. source "fs/yaffs2/Kconfig"

  6. source "fs/jffs2/Kconfig"

Makefile:
  1. obj-$(CONFIG_EXOFS_FS) += exofs/
  2. obj-$(CONFIG_CEPH_FS) += ceph/
  3. # Patched by YAFFS
  4. obj-$(CONFIG_YAFFS_FS) += yaffs2/

配置内核,支持yaffs2文件系统:
  1. File systems --->
  2.     DOS/FAT/NT Filesystems --->
  3.         <*> MSDOS fs support
  4.         <*> VFAT (Windows95) fs support
  5.         Miscellaneous filesystems --->
  6.             <*> YAFFS2 file system support
  7.              -*-512 byte / page devices
  8.                -*-2048 byte (or larger) / page devices
  9.             [*] Autoselect yaffs2 format

设置命令行参数:
  1. Boot options --->
  2. (noinitrd root=/dev/mtdblock3 init=/linuxrc console=ttySAC0,115200 rootfstype=yaffs2 rw mem=64M) Default kernel command string

注意:命令行参数很重要,以上内容,缺一不可

说明:现在内核已经支持NandFlash和yaffs2文件系统,将内核烧入NandFlash后,再烧入yaffs2文件系统,可以使用制作好的文件系统,也可以自己制作,详细的制作文件系统方法,请查看《文件系统制作手册》

启动时(成功挂载文件系统)输出:
  1. yaffs: dev is 32505859 name is "mtdblock3" rw
  2. yaffs: passed flags ""
  3. VFS: Mounted root (yaffs2 filesystem) on device 31:3.
  4. Freeing init memory: 128K

小超嵌入式工作室出品,  转载请注明出处,谢谢合作!
阅读(283) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~