Site Tools


Hotfix release available: 2024-02-06a "Kaos". upgrade now! [55.1] (what's this?)
New release available: 2024-02-06 "Kaos". upgrade now! [55] (what's this?)
multiboot

This is an old revision of the document!


MultiBoot Image

MultiBoot is a minimalistic self containing linux system designed to solely fit inside the Recovery partition of the AC100.

It offers a multiboot menu thanks to KexecBoot project using a modified 2.6.38 kernel. This kernel supports the kexec syscall, so any linux distro can virtually be booted with this MultiBoot image, including Android.

This image has still not been heavily tested, so use it at your own risk and DON'T forget to make backup before testing it.

Installation

Where to install ?

Although MultiBoot can just be installed in place of the main kernel, but can also be installed on the recovery partition.

Please note that booting a different system through the recovery menu is only supported on the bootloader provided by Android 2.1. If you have upgraded your AC100 to Android 2.2 prior to install linux, it's highly advisable to downgrade your AC100 to Android 2.1 (you do have backups, don"t you ?)

Download

Official MultiBoot release 1 image is available from there: http://www.pkg.fr/chrome/site/multiboot-r1.img

Using nvflash

From a working AC100 system

Check that your sos partition is /dev/mmcblk0p1 with:

abootimg -i /dev/mmcblk0p1

And install it with:

dd if=multiboot-r1.img of=/dev/mmcblk0p1

Usage

Create a /boot subfolder in any MMC partition. To try it, you can just use any SD Card large enought to contain a kernel image and an initrd: 8Mb can be enought but more is better ;)

When booting, Kexecboot will scan all available partition for a /boot subfolder.

Create a config file named boot.cfg. You may just used the example from: https://gitorious.org/~tequila/ac100/tequilas-ac100-multiboot/blobs/master/config/boot.cfg

In that example, zImage kernel and initrd.img initramfs are in the same folder than boot.cfg.

The path for KERNEL and INITRD lines are from the base of the used partition.

Check eventually the KexecBoot documentation.

Boot your device on multiboot, wait few seconds, select the kernel you want with the arrow keys, than press Enter.

Tips and Tricks

Sources

MultiBoot sources are hosted on gitorious: http://gitorious.org/~tequila/ac100/tequilas-ac100-multiboot

Retrieve git repository:

$ git clone git://gitorious.org/~tequila/ac100/tequilas-ac100-multiboot.git

Built it:

$ cd tequilas-ac100-multiboot
$ ./build_all

Technical details

Essentially, kernel is modified to not disable D-cache during machine_kexec call.

In the kernel configuration, it is important to disable SMP and THUMBEE to have kexec syscall working.

multiboot.1323881975.txt.gz · Last modified: 2011/12/14 17:59 by tequila