First off, you will need at least GCC 4.3.3 (what I tested with), as well as gnu-efi 3.0i from http://sourceforge.net/projects/gnu-efi/files/ (This is a toolchain for EFI binaries)
In gnu-efi 3.0i you will need to edit Make.defaults:
INSTALLROOT=/usr/local
to
INSTALLROOT=/usr
and then make; make install
Then you need to grab elilo-3.12-source.tar.gz from http://sourceforge.net/projects/elilo/files/ and apply (patch -p1) this patch against it (patch -p1) I have provided a elilo.efi that works on my Joggler (not in the 'screen.efi' trick), downloadable here.
You need to after putting elilo.efi in place, in your boot.nsh put the following lines (only lines in the file):
fs1:
cd \efi\elilo
elilo
And provide in \efi\elilo , a elilo.conf not unlike the following. legacy-free is a VERY IMPORTANT OPTION and is required because there is no 'real' BIOS on the joggler. Hope this works for you, otherwise, show up on #mer at irc.freenode.net :)
# Command line options understood here are
#
# fixup - Apply fixups so the default joggler OS can boot the new kernel.
# recovery - Instead of booting stop in a diagnostic shell
legacy-free
default=usb
image=vmlinuz-2.6.30
label=linux2
read-only
initrd=initrd-2.6.30
append="acpi=force root=/dev/mmcblk0p2 fixup"
description="Standard joggler OS with new kernel"
image=vmlinuz-2.6.30
label=usb
initrd=initrd-2.6.30
append="acpi=force root=/dev/sda2"
description="Boot from USB"
image=vmlinuz
label=testing
read-only
append="acpi=force root=/dev/mmcblk0p2"
description="Test vmlinuz, no initrd"
image=vmlinuz-2.6.24-19-lpia
label=test
initrd=initrd-2.6.30
append="acpi=force root=/dev/sda2"
description="Boot from Test"
Hi, thanks for providing that textmode patch; I thought I was going to have to reverse engineer one of the other random binaries to find out what it was doing!
ReplyDeleteI'm wondering about the binary kernel you supplied though; is it from vanilla sources, or does it need extra patches (e.g. to the efifb code)?
Ah, elilo isn't a kernel, but read my newest post for how to get a working kernel :)
ReplyDeleteAh yeah, I know :) I was trying to figure out why none of the (>2.6.30) kernels I built were not working.
ReplyDelete