Difference between revisions of "UBIFS"
From ArmadeusWiki
(→U-Boot parameters) |
(reorg) |
||
Line 9: | Line 9: | ||
[http://www.linux-mtd.infradead.org/doc/ubifs.html UBIFS website] | [http://www.linux-mtd.infradead.org/doc/ubifs.html UBIFS website] | ||
− | + | == Host Setup == | |
− | + | ||
* add ''uuid-dev'' packages (should be already installed as required to build the HEAD of Armadeus repository): | * add ''uuid-dev'' packages (should be already installed as required to build the HEAD of Armadeus repository): | ||
<pre class="host"> | <pre class="host"> | ||
Line 16: | Line 15: | ||
</pre> | </pre> | ||
− | == | + | ==APF build config== |
− | + | ===Buildroot=== | |
<pre class="host"> | <pre class="host"> | ||
$ make menuconfig | $ make menuconfig | ||
Line 44: | Line 43: | ||
$ make | $ make | ||
</pre> | </pre> | ||
− | + | ===Linux=== | |
<pre class="host"> | <pre class="host"> | ||
$ make linux26-menuconfig | $ make linux26-menuconfig | ||
Line 64: | Line 63: | ||
* reflash your kernel | * reflash your kernel | ||
− | ===U-Boot | + | ===U-Boot envt variables=== |
<pre class="apf"> | <pre class="apf"> | ||
BIOS> setenv bootcmd run ubifsboot | BIOS> setenv bootcmd run ubifsboot |
Revision as of 11:04, 5 May 2010
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.
Contents
Introduction
Host Setup
- add uuid-dev packages (should be already installed as required to build the HEAD of Armadeus repository):
$ sudo apt-get install uuid-dev
APF build config
Buildroot
$ make menuconfig
APF27:
Target filesystem options ---> [*] ubifs root filesystem (0x20000) UBI physical erase block size (0x1f800) UBI logical erase block size (0x800) UBI minimum I/O size (512) UBI sub-page size (2047) Maximum LEB count
APF9328:
Target filesystem options ---> [*] ubifs root filesystem (0x20000) UBI physical erase block size (0x1ff80) UBI logical erase block size (0x1) UBI minimum I/O size (0) UBI sub-page size (255) Maximum LEB count
$ make
Linux
$ make linux26-menuconfig
File systems ---> [*] Miscellaneous filesystems ---> <*> UBIFS file system support and disable debugging !! Device Drivers ---> <*> Memory Technology Device (MTD) support ---> UBI - Unsorted block images ---> <*> Enable UBI (4096) UBI wear-leveling threshold and disable debugging !!
$ make linux26
- reflash your kernel
U-Boot envt variables
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.