OLPC Firmware q4c12: Difference between revisions
No edit summary |
(Proper name for Open Firmware) |
||
(6 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
{{draft}} |
|||
{{OLPC}} |
{{OLPC}} |
||
{{Release Notes}} |
{{Release Notes}} |
||
Line 6: | Line 5: | ||
Works on XO-1.75 B1 and C1 only. Do not use on A2 or A3. |
Works on XO-1.75 B1 and C1 only. Do not use on A2 or A3. |
||
* new EC firmware 0.4.00, |
|||
* fix for ''EDI byte in timeout'', |
|||
* flattened device tree support, |
|||
* ext4 filesystem read and delete support, |
|||
* fix for file deletion leaving ext2 filesystems requiring fsck, |
|||
* fix for UNIX timestamp conversion in leap year adjustment, |
|||
* fix for Linux not booting when USB keyboard present. |
|||
{| border="1" cellspacing="0" cellpadding="2" class="wikitable" |
{| border="1" cellspacing="0" cellpadding="2" class="wikitable" |
||
|- |
|- |
||
| Download |
| Download |
||
| [http://dev.laptop.org/pub/firmware/ |
| [http://dev.laptop.org/pub/firmware/q4c12/q4c12.rom q4c12.rom] |
||
|- |
|- |
||
| Build date time <!-- .built --> |
| Build date time <!-- .built --> |
||
Line 31: | Line 38: | ||
== Changes since q4c11 == |
== Changes since q4c11 == |
||
=== |
=== Open Firmware === |
||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2811 svn 2811] - Q4C12 |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2809 svn 2809] - OLPC XO-1.75 - reduce build warnings |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2808 svn 2808] - OLPC XO-1.75 - fix build error, move suspend and resume test out of rtc.fth into build-fw.fth to access final-test? word. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2806 svn 2806] - OLPC XO-1.75 - new EC firmware |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2805 svn 2805] - OLPC XO-1.75 - retry EDI interface activation when using it for tag maintenance operations, change EDI byte in to reveal an inactive state, tested on C1 SKU201, fix for <trac>11565</trac>. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2802 svn 2802] - OLPC XO-1.75 XO-3 - do not test suspend and resume at FINAL, requested by Chia-Hsiu. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2800 svn 2800] - OLPC trac <trac>11568</trac> - ARM - added flattened device tree support. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2799 svn 2799] - EXT2/3/4 file systemsystem - OLPC trac <trac>11184</trac> - added the ability to delete extent-mapped files from an EXT4 filesystem. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2798 svn 2798] - EXT4 extents support. OFW can now read, but not write, EXT4 filesystems. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2796 svn 2796] - EXT2 file system - converted many internal routines to use 64-bit block numbers as a step toward ext4 support. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2795 svn 2795] - OLPC trac <trac>11349</trac> - The generic "$delete1" file command was leaving a directory ihandle open in the case where the file could not be deleted, leading to a delayed action bug that could cause write data not to be flushed from the disk buffer. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2793 svn 2793] - OLPC trac <trac>11562</trac> - security - RTC anti-rollback - Fixed stack bug that caused boot failures in the face of an invalid rtcreset.sig file. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2792 svn 2792] - OLPC trac <trac>11563</trac> - fixed longstanding problem with Unix timestamp conversion routines - leap year adjustment was badly broken. |
|||
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2790 svn 2790] - OLPC XO-1.75 and XO-3 - trac <trac>11547</trac> - Fixed problem with Linux not booting when a USB keyboard is attached. |
|||
=== CForth === |
=== CForth === |
||
* support CPU watchdog, |
|||
* new bye and power-off commands. |
|||
=== EC === |
=== EC === |
||
* implement the CP tag for constant power, for use as a server, fix for <trac>11498</trac>, |
|||
* improved kernel communication logging. |
|||
=== WLAN === |
=== WLAN === |
Latest revision as of 01:08, 7 October 2012
OLPC Firmware Release q4c12
Works on XO-1.75 B1 and C1 only. Do not use on A2 or A3.
- new EC firmware 0.4.00,
- fix for EDI byte in timeout,
- flattened device tree support,
- ext4 filesystem read and delete support,
- fix for file deletion leaving ext2 filesystems requiring fsck,
- fix for UNIX timestamp conversion in leap year adjustment,
- fix for Linux not booting when USB keyboard present.
Download | q4c12.rom |
Build date time | 2012-01-09 22:03:49 |
Source revision | 2811 |
EC version | 0.4.00 |
CForth version | 313d7516 |
Wireless firmware version | Libertas thinfirm 9.0.7.p2 |
Changes since q4c11
Open Firmware
- svn 2811 - Q4C12
- svn 2809 - OLPC XO-1.75 - reduce build warnings
- svn 2808 - OLPC XO-1.75 - fix build error, move suspend and resume test out of rtc.fth into build-fw.fth to access final-test? word.
- svn 2806 - OLPC XO-1.75 - new EC firmware
- svn 2805 - OLPC XO-1.75 - retry EDI interface activation when using it for tag maintenance operations, change EDI byte in to reveal an inactive state, tested on C1 SKU201, fix for <trac>11565</trac>.
- svn 2802 - OLPC XO-1.75 XO-3 - do not test suspend and resume at FINAL, requested by Chia-Hsiu.
- svn 2800 - OLPC trac <trac>11568</trac> - ARM - added flattened device tree support.
- svn 2799 - EXT2/3/4 file systemsystem - OLPC trac <trac>11184</trac> - added the ability to delete extent-mapped files from an EXT4 filesystem.
- svn 2798 - EXT4 extents support. OFW can now read, but not write, EXT4 filesystems.
- svn 2796 - EXT2 file system - converted many internal routines to use 64-bit block numbers as a step toward ext4 support.
- svn 2795 - OLPC trac <trac>11349</trac> - The generic "$delete1" file command was leaving a directory ihandle open in the case where the file could not be deleted, leading to a delayed action bug that could cause write data not to be flushed from the disk buffer.
- svn 2793 - OLPC trac <trac>11562</trac> - security - RTC anti-rollback - Fixed stack bug that caused boot failures in the face of an invalid rtcreset.sig file.
- svn 2792 - OLPC trac <trac>11563</trac> - fixed longstanding problem with Unix timestamp conversion routines - leap year adjustment was badly broken.
- svn 2790 - OLPC XO-1.75 and XO-3 - trac <trac>11547</trac> - Fixed problem with Linux not booting when a USB keyboard is attached.
CForth
- support CPU watchdog,
- new bye and power-off commands.
EC
- implement the CP tag for constant power, for use as a server, fix for <trac>11498</trac>,
- improved kernel communication logging.
WLAN
- none
Which Firmware Do You Have?
The best method for finding out what firmware version you have on a laptop depends on whether the laptop is secured or not, and what operating state it is in.
Unsecured Laptop
Obtain the Ok prompt, the firmware version is displayed in the startup banner, thus:
OLPC ..., ... memory installed, ..., S/N SHF7250024D OpenFirmware q4c12 ... EC Firmware Ver:... ^^^^^
You can also obtain the built date:
ok .built
This is the date and time that this image of the firmware was built by the release engineer.
Secured Laptop
Power up the laptop with the ✓ (check mark) game button held down. You will be asked to Release the game keys to continue. Release the ✓ (check mark) game button and watch carefully. For a short time the startup banner will be displayed, like this:
OLPC ..., ... memory installed, ..., S/N SHF7250024D OpenFirmware q4c12 ... EC Firmware Ver:... ^^^^^
Alternatively, if the laptop is already booted, go to the Sugar home view, click on the icon at the centre of the screen and select "My Settings" then "About my Computer." The firmware version is displayed there.
Alternatively, in the Terminal activity or a text console, type:
cat /proc/device-tree/openprom/model
or
cat /ofw/openprom/model
With certain older firmware versions, if the operating system will not start, and the laptop is secured, you will not be able to obtain the firmware version using the above methods, so our recommendation is to go ahead and upgrade anyway. The procedure is safe and will not do anything if you already have up-to-date firmware.
Installation
When installing new firmware, you must have a well-charged battery and the AC adapter plugged in. The firmware update code will not proceed otherwise. Possible error messages are:
error message | how to fix |
---|---|
AC not present | plug in the power cord, check the battery LED is on, then try again. |
No external power | plug in the power cord, check the battery LED is on, then try again, |
No battery | plug in the battery, check the latches, then try again, or try another battery, |
Battery low | allow more time for the battery to charge, then try again, or try another battery. |
Unsecured Laptop
This section is for unsecured laptops. Most XO-1.5 and XO-1.75 laptops are unsecured. Most developer XO laptops are unsecured. To unsecure your laptop, follow the instructions at Activation and Developer Keys.
You may install using either:
- a USB drive or SD card,
- the laptop's internal drive,
- a network.
Choose one.
Using a USB drive or SD card
- download the firmware from http://dev.laptop.org/pub/firmware/q4c12/q4c12.rom and save it to a USB drive or SD card,
- shutdown the laptop,
- check the battery is inserted and locked,
- check that the power cord is in place and the battery indicator is green,
- insert the USB drive or SD card,
- turn on the laptop, and get to the 'ok' prompt. See Ok for more detail. You should see:
ok
- if the downloaded file is on a USB drive, type:
flash u:\q4c12.rom
- if the downloaded file is on an external SD card:
flash sd:\boot\q4c12.rom
- wait for the laptop to reboot itself,
- remove the USB drive or SD card.
(Expert users may remove the USB drive after the message "Got firmware" ... at this stage the file has been read and closed.)
Using the laptop internal drive
An alternate method is to download the firmware file to the laptop internal drive and then install from the internal drive.
- start the laptop,
- connect to a wireless or wired network,
- start the Terminal Activity and type:
su cd /versions/boot/current/boot/ wget http://dev.laptop.org/pub/firmware/q4c12/q4c12.rom
- shutdown the laptop,
- check the battery is inserted and locked,
- check that the power cord is in place and the battery indicator is green,
- turn on the laptop, and get to the 'ok' prompt. See Ok for more detail. You should see:
ok
- if the downloaded file is on an XO-1, type:
flash n:\boot\q4c12.rom
- if the file is on the internal SD card of an XO-1.5 or XO-1.75:
flash int:\boot\q4c12.rom
Using a network
You will need a compatible USB to ethernet adapter, or an open or WEP wireless access point, connected to the internet.
- shutdown the laptop,
- check the battery is inserted and locked,
- check that the power cord is in place and the battery indicator is green,
- turn on the laptop, and get to the 'ok' prompt. See Ok for more detail. You should see:
ok
- if using wireless, type the essid of the wireless network:
essid mynetwork
- if using a WPA wireless access point, type the WPA key for the network:
wpa passphrase
- type the flash command using the download link above, but change all slash characters so they are backwards, for example:
flash http:\\dev.laptop.org\pub\firmware\q4c12\q4c12.rom
Secured Laptop
Secured laptops can only use flash firmware that has been signed. All mass-production machines had the latest firmware at the time of manufacture.
Upgrading firmware describes how to upgrade to a newer signed firmware release.
See also
- Cheat codes for information about how game buttons control startup options.