UT6410 Linux 2.6.24 YAFFS2做根文件系统方法
ut6410开发板自带的是cramfs文件系统作为根文件系统使用的,该文件系统只读,为了调试方便,将其改为yaffs2,具体方法为:
完成之后,make bzImage,然后在板子上启动新编译的内核,
cat /proc/filesystems
。。。。。。。。。
vfat
nodev nfs
nodev jffs2
romfs
yaffs
yaffs2
nodev rpc_pipefs
说明文件系统包含正确。
2、编译mkyaffs2image
在下载的yaffs2源码的util2目录里make,生成mkyaffs2image,最好使用自己生成的mkyaffs2image,否则可能会有一些莫名其妙的错误。
3、开发板环境设置:
首先查看flash分区信息:
0x00000000-0x00100000 : "Bootloader"
0x00100000-0x00300000 : "Kernel"
0x00300000-0x03300000 : "Root-Cramfs"
0x03300000-0x10000000 : "File System"
因此将最后一个分区作为yaffs分区使用。
首先制作yaffs2根文件系统镜像:
./mkyaffs2image root_fs_2.6.25.8_ccid rootfs_yaffs.img
然后设置板子bootargs:
SMDK6410 # setenv bootargs root=/dev/mtdblock3 rootfstype=yaffs init=/linuxrc console=ttySAC0,115200
SMDK6410 # saveenv
然后下载制作的镜像,烧写flash:
SMDK6410 # nand erase 3300000 cd00000
SMDK6410 # dnw c0008000
SMDK6410 # nand write c0008000 3300000 1c2c900
4、执行
如果成功,系统可以正常加载根文件系统:
yaffs: dev is 32505859 name is "mtdblock3"
yaffs: passed flags ""
yaffs: Attempting MTD mount on 31.3, "mtdblock3"
yaffs: auto selecting yaffs2
yaffs_read_super: isCheckpointed 0
VFS: Mounted root (yaffs filesystem).