Difference between revisions of "UBIFS"

From ArmadeusWiki
Jump to: navigation, search
m
(beautifying)
Line 2: Line 2:
  
 
This is a preliminary page dealing with the installation of UBIFS on the APF boards.  
 
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 board because JFFS2 induces a big overhead when parsing, reading and writing large devices [http://www.linux-mtd.infradead.org/doc/ubifs.html#L_scalability UBISFS scalability].
+
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, [http://www.linux-mtd.infradead.org/doc/ubifs.html#L_scalability 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]].
 
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]].
Line 8: Line 8:
 
== Introduction ==
 
== Introduction ==
 
[http://www.linux-mtd.infradead.org/doc/ubifs.html UBIFS website]
 
[http://www.linux-mtd.infradead.org/doc/ubifs.html UBIFS website]
 
  
 
== Setting up ==
 
== Setting up ==
* host system: add uuid-dev packages (should be already installed as required to build the HEAD of Armadeus repository) :  
+
* host system: add ''uuid-dev'' packages (should be already installed as required to build the HEAD of Armadeus repository):
 +
<pre class="host">
 
   sudo apt-get install  uuid-dev
 
   sudo apt-get install  uuid-dev
 
+
</pre>
* buildroot: target filesystem -> ubifs root filesystem for apf27:(PEB=0x20000, LEB=0x1F800, minIO=0x800, SUBPAGESIZE=512, MAXLEB=2047) and for apf9328 should be (PEB=0x20000, LEB=0x1FF80, minIO=0x1, SUBPAGESIZE=0, MAXLEB=255)
+
* Buildroot (APF27):
* linux: file systems -> Miscellanous -> ubifs support  and disable debugging !!
+
<pre class="config">
* linux: device driver -> mtd -> ubi unsorted block image -> Enable UBI (4096) and disable debugging !!
+
target filesystem -> ubifs root filesystem: (PEB=0x20000, LEB=0x1F800, minIO=0x800, SUBPAGESIZE=512, MAXLEB=2047)
 
+
</pre>
* uboot: setenv bootcmd run ubifsboot
+
* Buildroot (APF9328):
* uboot: setenv download_rootfs tftpboot ${loadaddr} ${serverpath}${board_name}-rootfs.arm.ubifs
+
<pre class="config">
 +
target filesystem -> ubifs root filesystem (PEB=0x20000, LEB=0x1FF80, minIO=0x1, SUBPAGESIZE=0, MAXLEB=255)
 +
</pre>
 +
* Linux:  
 +
<pre class="config">
 +
file systems -> Miscellanous -> ubifs support  and disable debugging !!
 +
device driver -> mtd -> ubi unsorted block image -> Enable UBI (4096) and disable debugging !!
 +
</pre>
 +
* U-Boot:
 +
<pre class="apf">
 +
BIOS> setenv bootcmd run ubifsboot
 +
BIOS> setenv download_rootfs tftpboot ${loadaddr} ${serverpath}${board_name}-rootfs.arm.ubifs
 +
</pre>
  
 
== Additional informations ==
 
== 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:
+
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:
 
<pre>
 
<pre>
 
  [ubifs]
 
  [ubifs]
Line 33: Line 45:
 
</pre>
 
</pre>
  
This file is processed by the ubinize utility after mkfs.ubifs.
+
This file is processed by the ''ubinize'' utility after ''mkfs.ubifs''.

Revision as of 14:17, 15 November 2009

Page under construction... Construction.png 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

UBIFS website

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.