Qi Bootmenu Progress

28.11.2009 at 18:02

I now have a working initramfs generated by these build scripts that launches a bootmenu application which scans the available partitions and presents a list of bootable systems which can be loaded via kexec.

In the process I added uImage support to kexec which means it should work with the current distros out there like SHR which provide uImages for their kernels.

The kernel I am using is based on Lars om-gta02-2.6.31 branch with a few patches to show an openmoko boot logo and my printk verbosity patchset.

The next thing I'm going to do is patching Qi to load an alternative kernel upon AUX press instead of just skipping one.

Then I need to optimize the whole thing for speed. It currently takes between 12-14 seconds (depending on whether I also scan the flash partition, mounting a jffs2 filesystem is slow because of the initial inode scanning I should probably test with ubifs). This is with the debug board attached, I don't know if that makes a difference. The whole uncompressed initramfs content is about 3.4 Mb (this is with network support + dropbear). I should try to remove more unneeded stuff and maybe link a few things statically. And the kernel can probably also be optimized for speed. Using devtmpfs from 2.6.32 for example would make busybox's mdev obsolete (I don't want to use a static /dev).

Anyway the basic functionality is there and I should probably provide a pre built kernel which contains the initramfs for users to test. And gta01 support is also a TODO item of course. My progress can be followed on the distro-devel list.


Comments (2)


18.12.2009 by Marco Trevisan (Treviño) (mail[at]3v1n0[dot]net)

What about using UBIFS for main flash? It would reduce jffs2 the mount speed... I'm using it right now in my freerunner (still using the 2.6.24 kernel where I backported the UBI patches) and it is really faster. Using it for NAND would improve also the performances in this field!

Hello, I could not find any contact info. So I am abusing this comment system.

31.08.2010 by kekekek (cooling.crystals[at]gmail[dot]com)

In your /projects/ciopfs/ page under section "ciopfs" is a typo ;-) is written: mkdir -p ~/tmp/ciopfs/{.data,case-insensitve} should be written: mkdir -p ~/tmp/ciopfs/{.data,case-insensitive} Have a nice day!