Userspace root image

From Openmoko

(Difference between revisions)
Jump to: navigation, search
m (Flashing a root filesystem into NAND)
(Flashing a root filesystem into NAND)
Line 23: Line 23:
 
== Flashing a root filesystem into NAND ==
 
== Flashing a root filesystem into NAND ==
  
The image can then be installed on the target device via the [[u-boot]] bootloader, e.g.
+
See [[U-boot#Writing_rootfs_to_NAND]]
 
+
QT2410 # tftpboot 0x32000000 rootfs.jffs2
+
QT2410 # nand erase 0x634000 0x39cc000
+
QT2410 # nand write.e 0x32000000 0x634000 0x700000
+
 
+
And then booted (in this example with a kernel downloaded via tftp/ethernet) by
+
 
+
QT2410 # setenv  bootargs root=/dev/mtdblock4 rootfstype=jffs2 console=ttySAC0,115200 loglevel=8
+
QT2410 # tftpboot 0x32000000 kernel.img
+
QT2410 # bootm 0x32000000
+

Revision as of 00:53, 10 February 2007

Contents

Creating a root filesystem from scratch

To create a root file system image for storage in NAND flash, we use the mkfs.jffs2 program contained int the Debian package mtd-tools.

mkfs.jffs2 --pad=0x700000 -o rootfs.jffs2 -e 0x4000 -n -d/tmp/jffsroot/

is a typical command. It creates a FS image for our erase block size of 16k, padded to 0x700000 bytes in length from the files contained in the /tmp/jffsroot directory and stores the FS image in rootfs.jffs2.

Using pre-created root fs image

OpenEmbedded

OpenEmbedded will itself create a jffs2 image at the end of the build process.

Once the build server is running, it will create root filesystem images for us.

demo JFFS2 root image

At the moment there is a very basic root fs image available from http://people.gta01.hmw-consulting.de/laforge/tmp/rootfs/rootfs.jffs2

Please note that this image will take ages to boot the first time, since this boot finishes the installation process.

Flashing a root filesystem into NAND

See U-boot#Writing_rootfs_to_NAND

Personal tools

Creating a root filesystem from scratch

To create a root file system image for storage in NAND flash, we use the mkfs.jffs2 program contained int the Debian package mtd-tools.

mkfs.jffs2 --pad=0x700000 -o rootfs.jffs2 -e 0x4000 -n -d/tmp/jffsroot/

is a typical command. It creates a FS image for our erase block size of 16k, padded to 0x700000 bytes in length from the files contained in the /tmp/jffsroot directory and stores the FS image in rootfs.jffs2.

Using pre-created root fs image

OpenEmbedded

OpenEmbedded will itself create a jffs2 image at the end of the build process.

Once the build server is running, it will create root filesystem images for us.

demo JFFS2 root image

At the moment there is a very basic root fs image available from http://people.gta01.hmw-consulting.de/laforge/tmp/rootfs/rootfs.jffs2

Please note that this image will take ages to boot the first time, since this boot finishes the installation process.

Flashing a root filesystem into NAND

See U-boot#Writing_rootfs_to_NAND