View source for Userspace root image

From Openmoko

Jump to: navigation, search

You do not have permission to edit this page, for the following reasons:

  • The action you have requested is limited to users in the group: Administrators.
  • You must confirm your email address before editing pages. Please set and validate your email address through your user preferences.

You can view and copy the source of this page:

Template used on this page:

Return to Userspace root image.

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

The image can then be installed on the target device via the u-boot bootloader, e.g.

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