UBIFS
From ArmadeusWiki
Page under construction... Informations on this page are not guaranteed !!
This is a preliminary page dealing with the installation of UBIFS on the APF boards. UBIFS will replace JFFS2 file system on NAND (and NOR as well) based boards because JFFS2 induces a big overhead when parsing, reading and writing large devices, see UBISFS scalability.
For the time being, this procedure can only be used with the APF27 board. Volunteers are welcome to investigate solutions to use UBIFS on the APF9328.
Introduction
Setting up
- host system: add uuid-dev packages (should be already installed as required to build the HEAD of Armadeus repository):
sudo apt-get install uuid-dev
- Buildroot (APF27):
target filesystem -> ubifs root filesystem: (PEB=0x20000, LEB=0x1F800, minIO=0x800, SUBPAGESIZE=512, MAXLEB=2047)
- Buildroot (APF9328):
target filesystem -> ubifs root filesystem (PEB=0x20000, LEB=0x1FF80, minIO=0x1, SUBPAGESIZE=0, MAXLEB=255)
- Linux:
file systems -> Miscellanous -> ubifs support and disable debugging !! device driver -> mtd -> ubi unsorted block image -> Enable UBI (4096) and disable debugging !!
- U-Boot:
BIOS> setenv bootcmd run ubifsboot BIOS> setenv download_rootfs tftpboot ${loadaddr} ${serverpath}${board_name}-rootfs.arm.ubifs
Additional informations
A new file 'ubinize.cfg' defining the ubi volumes is located in buildroot/target/ubifs/. This file contains the different UBI volumes of the UBI image:
[ubifs] mode=ubi vol_id=0 vol_type=dynamic vol_name=rootfs vol_alignment=1 vol_flags=autoresize
This file is processed by the ubinize utility after mkfs.ubifs.