OLPC Firmware q2d04
 OLPC Firmware Release q2d04 - 2007-11-08
This firmware is the first update release after the first mass production build. It includes fixes for some wireless networking problems and other issues affecting updates and manufacturing testing. It is supported on B3 and later systems. In addition, it has been tested to be safe (does not brick) on B1, B2-1, and preB3. Do not use it on pre-B1 boards - it will brick them because of the EC microcode. It does not work on Atest because support for Atest has been eliminated from the EC microcode.
See Cheat codes for information about how game buttons control startup options.
 Changes since OLPC Firmware q2d03
- OLPC trac 4707 - allow secure booting even if the real time clock is set incorrectly. When that is the case, all leases are deemed to have expired, but things like developer keys still work. Also added support for developer key expiration. If the expiration date on either a lease or a developer signature is the value 00000000T000000Z, the signature doesn't expire and is always deemed timely. Otherwise it is compared against the current system time.
- Added SNTP support and the new OLPC command "ntp-set-clock" for use in manufacturing test.
- Added nd-copy-nand command to handle .img files produced by nanddump for use in manufacturing test.
- OLPC trac 4702 - added game key cheat code - rocker left - to invoke diagnostics.
- OLPC trac 2740 - You can now update the NAND FLASH from the network, by pressing all four game keys at once. The search order for the fs.zip update script is USB, SD, http:\\172.18.0.1\fs.zip . If there is no wired network adapter, it will try wireless, trying to associate with an access point from this list of ESSIDs: OLPCOFW,school-mesh-0,school-mesh-1,school-mesh-2
- Added restore-mfg-data <filename> to restore manufacturing data saved by save-mfg-data. Also fixed a bug in save-mfg-data whereby the wrong filename is generated for old machines where the SN tag value doesn't have a trailing null.
- OLPC trac 4637 - workaround the "Libertas firmware returns the wrong MAC address" problem by waiting 200 ms after firmware download before reading the MAC address. (A better fix in the Libertas firmware is expected in a few days.)
- OLPC trac 4705 - fix scan failures caused by mesh auto-start happening during the scan attempt.
- OLPC trac 4599 - first-time? must be considered in optimizing out rescanning, in case the NAND image was changed underneath JFFS2. This improves the robustness of NAND FLASH updating when creating a new partition map.
- OLPC trac #4547 - unfreeze screen when 'dk' tag present.
 EC code is PQ2D02
- No changes from PQ2D02
 Installation Instructions
- If you have a B1-B4 system:
- Detailed upgrade instructions are located here.
- If your firmware version is earlier than the version in Auto Install Image then you can just use that procedure for the update.
Note: that this procedure will also upgrade the image in your nand flash -- which is the entire Linux operating system and all the files you may have edited or saved. This means it will ERASE what is in your nand and re-write it. So you will lose any data you have stored on the filesystem unless you back it up. If you do not want your files erased, then please use the first procedure above.
- Do NOT use olpcflash to write new firmware images. Doing so will erase the manufacturing data that was added at the factory.
- After you reflash, you must power cycle by physically removing power from the system. A warm-start or button-induced restart is not sufficient. Please remove both the battery pack and wall adapter for 10 seconds.
- If you have an ATest system
- Don't use this firmware. ATest support has been removed.