为AM335X 制作ubifs文件系统

ubuntu10.04默认没有mkfs.ubifs

首先安装mkfs.ubifs相关的工具

$sudo apt-get install mtd-utils 


解压TI提供的文件系统arago-base-tisdk-image-am335x-evm.tar.gz

$mkdir rootfs

$tar -xf  arago-base-tisdk-image-am335x-evm.tar.gz  -C rootfs


制作UBIFS文件系统:

$ sudo mkfs.ubifs -r rootfs -m 2048 -e 126976 -c 992 -o am335xubifs.img

-r rootfs :指定制作UBIFS文件系统的源文件目录

-m 2048:指定最小I/O操作的大小为2048字节

-e 126976:指定逻辑擦除块的大小

-c 992:指定最大逻辑除块的数目


将am335xubifs.img制作成可以直接在NAND FLASH上烧写的文件系统,带有UBI文件系统的卷标

$sudo ubinize -o am335xubi.img -m 2048 -p 128KiB -s 512 -O 2048 ubinize.cfg


ubinize.cfg是ubinize命令的一个配置文件:

[ubifs]
mode=ubi
image=am335xubifs.img //用mkfs.ubifs工具制作出来的ubifs镜像
vol_id=0
vol_type=dynamic
vol_name=rootfs
vol_flags=autoresize


之后就可以将am335xubi.img在U-BOOT中通过产TFTP或SD卡下载到SDRAM中

$fatload mmc 0 0x82000000 am335xubi.img

$nand write 0x82000000 NAND.rootfs $filesize


将上述命令写成一个小脚本f.sh

#! /bin/sh
echo "make director rootfs to am335xubifs.img..."
sudo mkfs.ubifs -r rootfs -m 2048 -e 126976 -c 992 -o am335xubifs.img
echo "am335xubifs.img done."
#使用ubinize可以将mkfs.ubifs命令制作出来的UBIFS 文件系统镜像直接在FLASH上烧写的格式
#(带有UBI文件系统镜像卷标)
#能过此命令生成的am335xubi.img可直接烧写到NAND FLASH上。
echo "make am335xubifs.img to am335xubi.img..."
sudo ubinize -o am335xubi.img -m 2048 -p 128KiB -s 512 -O 2048 ubinize.cfg
echo "am335xubi.img done."

你可能感兴趣的:(am335x)