Ubuntu Touch bootsplash support from initrd to shell

Registered by Oliver Grawert on 2013-11-07

For certain bits if the boot process we need to be able to inform the user about things going on (i.e. extremely low battery that prevents a full boot, certain non standard boot steps that might need to give feedback to the user or delay the boot etc)

Some of these bits require visual feedback from within the initrd, others need graphical output before Mir or lightdm are up. Discuss which solutions we have for this and find the best one to implement (androids pixelflinger, plymouth framebuffer support etc)

Blueprint information

Status:
Not started
Approver:
Michael Frey
Priority:
Undefined
Drafter:
Oliver Grawert
Direction:
Approved
Assignee:
Oliver Grawert
Definition:
New
Series goal:
Accepted for trusty
Implementation:
Unknown
Milestone target:
None

Related branches

Sprints

Whiteboard

UDS notes from the session:

* system compositor doesn't rely on the container: Mir does because the shell wants sensors etc. as well, but graphics does not require initialization via ueventd
* so we can get the splash up shortly after run-init
* potentially check the battery state in the initrd but move on to booting the rootfs and only then show the animation

(?)

Work Items

Work items:
[rsalveti] Investigate if we can use GL before the container is up: TODO
[ogra] Investigate most earliest and easiest point in boot process to integrate lightdm: TODO
[ogra] research initrd size with plymouth in it, check if it still fits at least on all devices we support (tegra specifically): TODO
[vorlon] talk to tvoss, kgunn about the system compositor and whether we'll get it for this cycle: TODO
[rsalveti] Talk with the design team about the flashing/update UI in the recovery: TODO
[ogra] implement initramfs hook that on low battery mode, boots the root system with a different initial upstart event (like friendly-recovery): TODO
[robert-ancell] Allow lightdm to start without graphics HW being available: TODO
[mterry] Enable greeter to render the boot animation: TODO
[mterry] Finish up split greeter work: TODO