LWN.net Logo

The OLPC and BIOS upgrades

The OLPC and BIOS upgrades

Posted Aug 31, 2006 14:55 UTC (Thu) by hamjudo (subscriber, #363)
Parent article: The OLPC and BIOS upgrades

This is approaching the wrong problem. The root problem is that the system can be bricked at all. There should be a real ROM in there somewhere for emergency use and a hardware way to force it to boot off of the real ROM.

It can be complex to prevent accidental invocation, like holding a combination of keys while powering it on, and that gets you N seconds to do some other combination of keys, or it falls back to the normal boot.


(Log in to post comments)

The OLPC and BIOS upgrades

Posted Aug 31, 2006 16:25 UTC (Thu) by leoc (subscriber, #39773) [Link]

I agree 100%. As we see with other operating systems, no amount of money thrown at the problem is going to stop end users from doing bad things, more so when you are talking about people who have very little computer experience. The system should probably have some read-only-hardware method to restore the machine to the way it was when it was first turned on.

The OLPC and BIOS upgrades

Posted Sep 11, 2006 22:22 UTC (Mon) by jg (subscriber, #17537) [Link]

Which is why we have to protect the BIOS rom so carefully: it is what
will allow someone to get a fresh copy of the system bits reinstalled onto
NAND flash.

The OLPC and BIOS upgrades

Posted Aug 31, 2006 17:10 UTC (Thu) by iabervon (subscriber, #722) [Link]

If nothing else, just about any device will get broken if power runs out halfway through replacing the BIOS; unless there's twice as much storage for the BIOS, there can't be either complete image on the system. So you at least need some way to recover from this.

Personally, I think the best idea is to have a ROM bootloader, capable of flashing the BIOS from a USB device or from a ROM original if the system is powered up with some arrangement that's hard to do accidentally. You can't replace the bootloader, but you shouldn't need to, because it doesn't do anything other that replace the BIOS or start running it. It should probably also be possible to replace the BIOS if the current BIOS permits it (generally, if the new image is signed by a key known to the existing BIOS). With this scheme, the user always has the ultimate control, able to do whatever with a USB device and physical access; the nation can preconfigure the machines with their own images, and can mass-update machines if it has set this up (and the machines are still using their BIOS). So there is the potential for a bricking or backdoor virus, but physical access is sufficient to recover from this situation. Users can hack on the BIOS, but the mechanism they use to change it is not easy to subvert, since it requires external storage and out-of-band actions (e.g., removing the battery). Of course, BIOS developers would add their own key to their own BIOS, and be able to update it easily, but these users will be harder to fool.

The OLPC and BIOS upgrades

Posted Sep 4, 2006 14:05 UTC (Mon) by emj (guest, #14307) [Link]

The whole idea with using LinuxBIOS is that you don't need any bootloader drivers for USB devices.... The complexity goes up quite abit if you need a driver for USB flash devices as well..

The OLPC and BIOS upgrades

Posted Sep 11, 2006 22:19 UTC (Mon) by jg (subscriber, #17537) [Link]

You presume that people all over the world have USB keys.

Not so. Some people are *really* poor.

And logistically, updating a school of hundreds or thousands of
laptops with *any* procedure that requires touching the machines
is basically saying it won't happen (some of/all of) the time.

The OLPC and BIOS upgrades

Posted Sep 11, 2006 22:20 UTC (Mon) by jg (subscriber, #17537) [Link]

Oh, we plan to have the reflash utility check that the battery is installed
and charged, or not be willing to proceed. This minimizes the window
of vulnerability greatly.

A removable BIOS?

Posted Aug 31, 2006 21:25 UTC (Thu) by thomask (guest, #17985) [Link]

As an additional measure, how about using removable media (like an SD card or something) for the BIOS? That would at least mean that if the system got bricked you'd only have to replace a small and cheap piece of hardware, rather than a large and expensive one.

A removable BIOS?

Posted Sep 7, 2006 14:55 UTC (Thu) by jimwelch (guest, #178) [Link]

I like this idea. Just like the memory card in my phone, cheap connector, cheap card, Small (looks like a credit card when shiped). I don't know if the final design has a place to put it, like a battery compartment on a real laptop. What is the storage capacity on a phone card? What is the standard?

A removable BIOS?

Posted Sep 11, 2006 22:15 UTC (Mon) by jg (subscriber, #17537) [Link]

Sockets cost money.... We have such a socket on the development boards.

But it turns out that if the embedded controller code, stored in the
same flash that the BIOS is stored in, is trashed, the board doesn't
even power up enough to be able to use a PLCC Flash part. (The
embedded controller is responsible for battery and other
power control in the machine). We've done this
(once).

You *REALLY* don't want to have the BIOS rom completely trashed. Recovery
at that point may require complex stuff talking to the embedded controller,
and is so painful we decided when we managed to do this once it wasn't
worth even trying to fix the board.

The OLPC and BIOS upgrades

Posted Sep 11, 2006 22:21 UTC (Mon) by jg (subscriber, #17537) [Link]

We can't afford another ROM.

Remember, we have to make an inexpensive machine....

There is a reason it is called the $100 laptop (though it is innovative in
very many ways).

Copyright © 2008, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds
Powered by Rackspace Managed Hosting.