rockchip --- 根文件系统由 squashfs 改为 ubifs
buildroot 修改
minmum I/O unit size:页大小,单位字节,flash 以页为单位进行读写,0x800为2048
physical eraseblock size:块大小,flash 以块为单位进行擦除,0x20000为128KB
sub-page size:并不是所有 nand flash 都有子页,没有的话应该设置为页大小
logical eraseblock size:等于物理擦除块-2页,所以是 0x1f000
maximum logical eraseblock count:nand flash 的块数量
以上的参数是 mkfs.ubifs 和 ubinize 会使用到的,ubinize 需要的 config file 可以从 /buildroot/fs/ubifs 中找到
这些参数可以通过编译initramfs启动kernel,在目标板上通过mtdinfo命令查看信息
mtdinfo -u /dev/mtd2
kernel 修改
[*] Device Drivers ---> <*> Memory Technology Device (MTD) support ---> <*> Enable UBI- Unsorted block images ---> File systems ---> [*] Miscellaneous filesystems ---> <*> UBIFS file system support
设备树修改
root=PARTUUID=614e0000-0000-4b53-8000-1d28000054a9 或者
root=PARTUUID=614e0000-0000
PARTUUID 不能少,否则如下卡死: