Om2009 testing release 4

Kevin Day thekevinday at gmail.com
Wed Jun 3 15:11:17 CEST 2009


On Tue, Jun 2, 2009 at 9:50 AM, Al Johnson
<openmoko at mazikeen.demon.co.uk> wrote:
> On Tuesday 02 June 2009, Robin Paulson wrote:
>> 2009/6/2 Al Johnson <openmoko at mazikeen.demon.co.uk>:
>> > On Tuesday 26 May 2009, Robin Paulson wrote:
>> >> there's no incentive i can see to stay with uboot
>> >
>> > You probably don't have 4 different distros on your SD then ;-)
>>
>> no, i don't.
>>
>> but it doesn't look like it will be long before qi can do multi-boot
>>
>> http://wiki.openmoko.org/wiki/Qi#Boot_Menu
>
> It's been done already - there was a thread about building the minimal kernel
> and rootfs, and using it to kexec into the one you really want to boot.
> Unfortunately that takes up another partition that I just don't have spare due
> to the kernel limitation on partitions in mmcblk devices, and android's thirst
> for partitions. This could be worked around too, but as I already have  a
> working uboot setup there doesn't seem much point. I've nothing against Qi,
> but in my case uboot is the better tool for the job.
>
>

What one could do is create an initramfs and build it directly into the kernel.
The small rootfs would exist with the boot kernel on any desired
partition (say partition 0), taking up no more partitions than already
used.

The initramfs must be pregenerated.
The command to create the initramfs is:
find . | cpio --quiet -H newc -o | gzip -9 -n > /usr/src/boot-initrd.cpio.gz

Place the initramfs into the kernel source tree, and then something
like this config option should be used:
CONFIG_INITRAMFS_SOURCE="boot-initrd.cpio.gz"

It's relatively easy to tell when the initrd makes it into the kernel,
just look at its size!

-- 
Kevin Day



More information about the support mailing list