Hey all, I'm currently unable to spend any time on implementing the ARM softbootloader this cycle, so I'm dropping this overview here, and would be glad to accept any patches or help from anyone who has some free time to help work on it for karmic+1. A good overview of the Design and Rationale is available on the original specification, this spec can be found here: http://wiki.ubuntu.com/Specs/ARMSoftbootLoader.
The softbootloader itself is built around the kexec mechanism built in the kernel; this mechanism allows a new kernel to loaded into RAM, and then executed without having the machine having to cycle through BIOS/POST again, as well as allowing a kernel to be loaded from locations normally inaccessible to be loaded. As most ARM bootloaders are fairly limited in their ability to load from different locations this allows us to work around the problem, as well as giving the user to load multiple kernels similar in functionality to GRUB on x86. The current work I've done in writing a softbootloader is here: https://code.edge.launchpad.net/~mukluk-dev/mukluk/trunk, if anyone is interested in working with it, or committing code, feel free to drop me an email or ping me on IRC. As a side-note, the code-base itself is architecture-independent and I have done most the development on it on amd64 and i386 VMs and real hardware; as long as your machine supports kexec, you can run it. Michael -- Ubuntu-mobile mailing list Ubuntu-mobile@lists.ubuntu.com Modify settings or unsubscribe at: https://lists.ubuntu.com/mailman/listinfo/ubuntu-mobile