Create a common softboot loader for ARM devices

Registered by Emmet Hikory

Provide a softboot loader for ARM to address outstanding issues with the wide variety of methods used to boot ARM devices, in a similar manner to that does to support ps3. Such a softboot loader would be installed on system flash or trusted boot media, to sufficiently enable the system to boot from more common devices (USB sticks, optical drives, hard drives, etc.).

Blueprint information

David Mandala
Michael Casadevall
Michael Casadevall
Series goal:
Milestone target:
Completed by
David Mandala

Related branches


[05-15-10 apw]: looks like the series goal should now be maverick not lucid to get the work items in the burndown system.
[04-30-10 ncommander]: resubmitted for maverick
[02-12-10 ncommander]: unblocked this spec, revised work items based on current progress
[02-12-10 asac]: adjust some overly eager time estimates :); added an item to document stuff for vendors that want to support softbooloader.
[02-12-10 asac]: sry. mistyped: please add work items/bugs to address the kexec blockage. setting to pending approval assuming that you add this.
[15-01-10 asac]: postponing everything, but the kexec testing part of this spec; we could better plan next cycle based on those results which is why i think having that item done and document is still worthwhile.
[15-02-10 asac]: this is too late for lucid; postponed; we have to check how we can properly do the work items so they dont kill our burn down together.

deferred - feels too late for lucid ... Work can be resumed due to kexec on ARM partially working under Dove, and possibly fully working under imx51 as of writing.

Work items:
Evaluate pre-existing solutions: DONE
Create a working proof of concept: DONE
Short presentation email on PoC to ubuntu-mobile@ [1 day]: DONE
Create working package for softbootloader: DONE
Write overall design document: DONE
Retest kexec() on dove and imx51 final: DONE
Write mukluk specification, and have it approved by users interested in softbootloader [3-5 days]: TODO
Add support for a default entry [3 days]: TODO
Write documentation [1 day]: TODO
Perform code review [2 days]: TODO
First release [1 day]: TODO
Rewrite menu layout and design (placeholder menu code in place; non-critical) [2 days]: TODO
Upload to archive [1 day]: TODO
Test on ARM hardware, evaluateTand fixing [3 day]: TODO
Create standalone kernel/initramfs creation method to exist inbetween native bootloader and linux kernel [3 days] : TODO
Discuss with kernel and mobile teams if we want to support ARM softbootloader: TODO
Determine which SoCs we wish to support as native booting method in place of standard bootiup: TODO
Modify the installation system to be able to chainload off mukluk (requires flash-kernel modifications) [1 day]: TODO
[gruemaster] Develop end-user usability test plan and provide feedback: TODO

[05-19-2010 eric.y.miao] The soft bootloader is actually independent of the blueprint kernel-maverick-arm-kernel-as-bootloader, work items related to the latter moved back and can be tracked in the kernel work.


Work Items