Ticket #5422 (closed defect: fixed)
Pending firmware update apparently prevents boot until AC power is applied
|Reported by:||gnu||Owned by:||wmb@…|
|Component:||ofw - open firmware||Version:|
|Keywords:||release?||Cc:||cscott, rharrison, tomeu, rafael, Eben|
|Deployments affected:||Blocked By:|
B4, 650, Q2D05.
I was running a ship.1 candidate and upgraded to 650 with olpc-update. That worked. Upon reboot, the machine did not upgrade its firmware, because it wasn't running in secure mode.
On my next reboot, I held the X key to get a secure reboot. The result is that the laptop would not boot: It noticed the new firmware, noticed that the machine had no AC power, and decided to do the worst thing possible. It complained, left the message up for ten seconds and then powered itself off.
It could have just ignored the firmware and booted up the existing OS. It could have ignored the firmware and booted the backup OS. It could have installed the firmware while running on batteries (the battery was >80% full). No -- it bricked the machine until AC arrived. (Perhaps this was the "security over usability" tradeoff desired. If so, the tradeoff should be re-evaluated.)
(People sold 9V battery power plugs for old Macintoshes, that would fool the computer into thinking it had AC power. This allowed suspending then swapping the battery, without crashing. I suspect the same trick would work on the OLPC, as a circumvention.)
(Because my machine isn't DRM'd, I could just power it back on without holding the "X" key, and it booted fine. And because I was close to my charger and working AC power, I was able to plug it in and power it on, at which point it upgraded the firmware to Q2D06. This bug is being reported for the people who don't have either option handy.)
[I suggest curing this by testing MP hardware's ability to correctly do firmware updates on battery power, and relaxing that restriction if possible.]