RK3308移植YAFFS2文件系统详细步骤

最近由于项目原因,要在RK3308的平台上移植一个nand flash的文件系统,有UBI和yaffs备选,由于nand flash容量的问题,最后选择了yaffs(容量低的建议选择yaffs,容量高的选择UBI)。下面详细介绍下移植yaffs的步骤。

首先去官网down下yaffs的源码,路径为:

git clone https://github.com/Aleph-One-Ltd/yaffs2.git

需要在linux下用git下载,没有git的就apt install安装一下。

代码下载之后,读一下yaffs/linux目录下的README.md,里面介绍了给kernel打patch的操作,具体如截图所示:

这样就会在Linux的menuconfig中增加yaffs相关的配置,如果要开启yaffs文件系统,需要进入kernel目录,用make menuconfig的方式打开yaffs,具体操作如下截图所示:

这样就在kernel中打开了yaffs文件系统。保存退出。然后make savedefconfig。最后编译kernel烧录进终端。

接下来需要制作mkyaffs2image工具,在下载源码中的yaffs2/utils目录下运行make脚本,但是我这里编译不过,得改make脚本,懒得改,就去网上找了个mkyaffs2image的工具,如下:

组件下载

解压之后,把mkyaffsimage拷贝到sbin目录下,就可以正常使用啦(或者用绝对路径调用也可以)。然后运行打包命令

./mkyaffs2image rootfs/ rootfs.img

即把rootfs目录打包成rootfs.img,然后再把这个rootfs烧录到终端里面去,就可以啦。

我这里是把rootfs烧录到了userdata分区,然后再终端里面挂载,命令如下:

mount -w -t yaffs2 /dev/mtdblock6 /userdata

最后用mount指令查看当前挂载的文件系统:

挂载上之后就可以在userdata里面去创建文件啦。最后哪个分区要用yaffs的话需要在build.sh脚本中加mkyaffs2image打包命令,就可以把对应分区打包成yaffs文件系统。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值