原创 移植yaffs2文件系统(TQ2440_W43)

2013-9-5 13:14 1446 13 13 分类: MCU/ 嵌入式

移植yaffs2文件系统

1、获取yaffs2源码

http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/

在linux终端输入命令:git clone git://www.aleph1.co.uk/yaffs2 可以直接下载在当前目录下,目录名为yaffs2.

2、在内核中添加对yaffs2的支持

将yaffs2源码拷贝到你想移植的内核中../linux.2.6.30.4/fs/

在刚下载的yaffs2源码中,执行:

./patch-ker.sh c m  ../linux-2.6.30.4/

此时在内核fs目录下,新增“yaffs2”目录,同时fs/目录下面的Makefile文件和Kconfig文件也添加了yaffs2的配置和编译条件。

patch-ker.sh后自动完成下面三点:

1)修改内核fs/Kconfig 增加一行:source "fs/yaffs2/Kconfig"

2)修改内核fs/Makefile 增加一行ojb-$(CONFIG_YAFFS_FS) +=yaffs2/

3) 在内核fs/目录下创建yaffs2目录将yaffs2源码目录下面的Makefile.kernel文件复制为内核fs/yaffs2 /Makefie;将yaffs2 源码目录的Kconfig_multi文件复制到内核fs/yaffs2/Kconfig

3、在配置单中添加对yaffs2的支持

$make menuconfig

File systems  --->

               

  • Miscellaneous filesystems  --->

                                         <*>   YAFFS2 file system support

    注意:假如在内核中没有添加对yaffs2的支持,则出现找不到或者挂载文件系统是失败的提示:

    List of all partitions:
    0100       4096 ram0 (driver?)
    0101       4096 ram1 (driver?)
    0102       4096 ram2 (driver?)
    0103       4096 ram3 (driver?)
    0104       4096 ram4 (driver?)
    0105       4096 ram5 (driver?)
    0106       4096 ram6 (driver?)
    0107       4096 ram7 (driver?)
    0108       4096 ram8 (driver?)
    0109       4096 ram9 (driver?)
    010a       4096 ram10 (driver?)
    010b       4096 ram11 (driver?)
    010c       4096 ram12 (driver?)
    010d       4096 ram13 (driver?)
    010e       4096 ram14 (driver?)
    010f       4096 ram15 (driver?)
    1f00        256 mtdblock0 (driver?)
    1f01       2048 mtdblock1 (driver?)
    1f02      63168 mtdblock2 (driver?)
    No filesystem could mount root, tried:  ext3 ext2 cramfs msdos vfat romfs
    Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(31,2)

    其他配置参考附件图1,2

    4、yaffs2移植完成,重新编译内核

  • PARTNER CONTENT

    文章评论0条评论)

    登录后参与讨论
    EE直播间
    更多
    我要评论
    0
    13
    关闭 站长推荐上一条 /3 下一条