OLPC Firmware q3c07: Difference between revisions

From OLPC
Jump to navigation Jump to search
No edit summary
 
(One intermediate revision by the same user not shown)
Line 1: Line 1:
{{draft}}
{{OLPC}}
{{OLPC}}
{{Release Notes}}
{{Release Notes}}
Line 7: Line 6:
Works on XO-1.5 C1-C8 systems.
Works on XO-1.5 C1-C8 systems.


* add visual response to escape key when in secure mode, <trac>11609</trac>,
* fix to vocabulary search order while in telnetd, <trac>11926</trac>,
* rework of test menu for USB ports, <trac>11845</trac>,
* keep menu visible after automatic tests, <trac>11847</trac>,
* restore audio test sweep volume to original level, <trac>11846</trac>,
* test menu, enable ALPS touchpad driver, <trac>11902</trac>,
* add .os command for test bed management,
* remove USB serial adapter keyboard support, <trac>11871</trac> and <trac>11887</trac>,


{| border="1" cellspacing="0" cellpadding="2" class="wikitable"
{| border="1" cellspacing="0" cellpadding="2" class="wikitable"
Line 29: Line 36:
== Changes ==
== Changes ==


* [http://tracker.coreboot.org/trac/openfirmware/changeset/3009 3009] OLPC - revert svn 2950 and svn 2954 as they are affecting mass production
* [http://tracker.coreboot.org/trac/openfirmware/changeset/3009 3009] OLPC - revert svn [http://tracker.coreboot.org/trac/openfirmware/changeset/2950 2950] and svn [http://tracker.coreboot.org/trac/openfirmware/changeset/2954 2954] as they are affecting mass production
* [http://tracker.coreboot.org/trac/openfirmware/changeset/3007 3007] OLPC - security, add visual response to escape key when in secure mode, without consuming keystroke, to improve usability for service and support (since it is otherwise difficult to tell if a laptop is secured, or the keyboard is broken). #11609
* [http://tracker.coreboot.org/trac/openfirmware/changeset/3007 3007] OLPC - security, add visual response to escape key when in secure mode, without consuming keystroke, to improve usability for service and support (since it is otherwise difficult to tell if a laptop is secured, or the keyboard is broken). <trac>11609</trac>.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/3006 3006] OFW core - execute-device-method was using device-end, which sets the search order to a fixed value, inside of the wrapping code that modifies the search order reversibly. That's probably a holdover from some ancient behavior. Fixes OLPC trac #11926.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/3006 3006] OFW core - execute-device-method was using device-end, which sets the search order to a fixed value, inside of the wrapping code that modifies the search order reversibly. That's probably a holdover from some ancient behavior. Fixes <trac>11926</trac>.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/3004 3004] OLPC - probe all ports of the EHC during a test, regardless of whether they are in use. Remove fisheye test from default testing, because it is not used in manufacturing, and had been incorrectly used in the field to verify a port is working. No change to manufacturing tests. #11845.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/3004 3004] OLPC - probe all ports of the EHC during a test, regardless of whether they are in use. Remove fisheye test from default testing, because it is not used in manufacturing, and had been incorrectly used in the field to verify a port is working. No change to manufacturing tests. <trac>11845</trac>.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2999 2999] OLPC - keep menu active and display results after all tests completed. #11847
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2999 2999] OLPC - keep menu active and display results after all tests completed. <trac>11847</trac>.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2998 2998] OLPC - test menu, automatic tests; maintain an overall failure state and report it at the end, handle any escape request from the hold message, make the quit item the default afterwards, and provide the timed menu again. #11847.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2998 2998] OLPC - test menu, automatic tests; maintain an overall failure state and report it at the end, handle any escape request from the hold message, make the quit item the default afterwards, and provide the timed menu again. <trac>11847</trac>.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2997 2997] OLPC - use a different commit id for the NANDblaster code, fixing a build dependency problem introduced by the name change from start.s to start.S in the x86 directory of the client library.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2997 2997] OLPC - use a different commit id for the NANDblaster code, fixing a build dependency problem introduced by the name change from start.s to start.S in the x86 directory of the client library.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2996 2996] FCode tokenizer - removed the macro versions of */ and */mod, which do not work correctly (the intermediate result can overflow). If you need to use these functions in an FCode driver, use um* and um/mod to perform the calculations.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2996 2996] FCode tokenizer - removed the macro versions of */ and */mod, which do not work correctly (the intermediate result can overflow). If you need to use these functions in an FCode driver, use um* and um/mod to perform the calculations.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2995 2995] isin.fth - before svn 2994, the calculation in set-period was using */, which is supposed to use a double-precision intermediate value to avoid overflow. However, */ is not a primitive FCode, so the FCode tokenizer was synthesizing it (incorrectly) using (overflowing) * and /. The correct fix, to retain precision, is to implement "u*/" using (double-precision) um* and um/mod .
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2995 2995] isin.fth - before svn [http://tracker.coreboot.org/trac/openfirmware/changeset/2994 2994], the calculation in set-period was using */, which is supposed to use a double-precision intermediate value to avoid overflow. However, */ is not a primitive FCode, so the FCode tokenizer was synthesizing it (incorrectly) using (overflowing) * and /. The correct fix, to retain precision, is to implement "u*/" using (double-precision) um* and um/mod .
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2994 2994] OLPC XO-1 XO-1.5 - restore normal sweep audio test volume, #11846. A multiply overflowed 32-bits in set-period. Regression introduced in svn 2260.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2994 2994] OLPC XO-1 XO-1.5 - restore normal sweep audio test volume, <trac>11846</trac>. A multiply overflowed 32-bits in set-period. Regression introduced in svn [http://tracker.coreboot.org/trac/openfirmware/changeset/2260 2260].
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2991 2991] OLPC - lid close consistent across models, made into common code, #11095
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2991 2991] OLPC - lid close consistent across models, made into common code, <trac>11095</trac>,
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2989 2989] OLPC trac #11902 - ALPS touchpad driver - use mouse emulation mode on initial open so the menu works, switching to ALPS mode only during selftest.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2989 2989] OLPC <trac>11902</trac> - ALPS touchpad driver - use mouse emulation mode on initial open so the menu works, switching to ALPS mode only during selftest.
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2987 2987] OLPC - add .os command for test bed management
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2987 2987] OLPC - add .os command for test bed management
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2985 2985] OLPC - remove USB serial adapter keyboard support from all models, #11871 #11887
* [http://tracker.coreboot.org/trac/openfirmware/changeset/2985 2985] OLPC - remove USB serial adapter keyboard support from all models, <trac>11871</trac> <trac>11887</trac>.


{{:Manual_Firmware_Identify|version=q3c07}}
{{:Manual_Firmware_Identify|version=q3c07}}

Latest revision as of 04:14, 15 June 2012

  This page is monitored by the OLPC team.

OLPC Firmware Release q3c07

Works on XO-1.5 C1-C8 systems.

  • add visual response to escape key when in secure mode, <trac>11609</trac>,
  • fix to vocabulary search order while in telnetd, <trac>11926</trac>,
  • rework of test menu for USB ports, <trac>11845</trac>,
  • keep menu visible after automatic tests, <trac>11847</trac>,
  • restore audio test sweep volume to original level, <trac>11846</trac>,
  • test menu, enable ALPS touchpad driver, <trac>11902</trac>,
  • add .os command for test bed management,
  • remove USB serial adapter keyboard support, <trac>11871</trac> and <trac>11887</trac>,
Download q3c07.rom
Build date time 2012-06-14 22:03:16
Source revision 3010
EC version 2.2.10
Wireless firmware version Libertas thinfirm 9.0.7.p2

Changes

  • 3009 OLPC - revert svn 2950 and svn 2954 as they are affecting mass production
  • 3007 OLPC - security, add visual response to escape key when in secure mode, without consuming keystroke, to improve usability for service and support (since it is otherwise difficult to tell if a laptop is secured, or the keyboard is broken). <trac>11609</trac>.
  • 3006 OFW core - execute-device-method was using device-end, which sets the search order to a fixed value, inside of the wrapping code that modifies the search order reversibly. That's probably a holdover from some ancient behavior. Fixes <trac>11926</trac>.
  • 3004 OLPC - probe all ports of the EHC during a test, regardless of whether they are in use. Remove fisheye test from default testing, because it is not used in manufacturing, and had been incorrectly used in the field to verify a port is working. No change to manufacturing tests. <trac>11845</trac>.
  • 2999 OLPC - keep menu active and display results after all tests completed. <trac>11847</trac>.
  • 2998 OLPC - test menu, automatic tests; maintain an overall failure state and report it at the end, handle any escape request from the hold message, make the quit item the default afterwards, and provide the timed menu again. <trac>11847</trac>.
  • 2997 OLPC - use a different commit id for the NANDblaster code, fixing a build dependency problem introduced by the name change from start.s to start.S in the x86 directory of the client library.
  • 2996 FCode tokenizer - removed the macro versions of */ and */mod, which do not work correctly (the intermediate result can overflow). If you need to use these functions in an FCode driver, use um* and um/mod to perform the calculations.
  • 2995 isin.fth - before svn 2994, the calculation in set-period was using */, which is supposed to use a double-precision intermediate value to avoid overflow. However, */ is not a primitive FCode, so the FCode tokenizer was synthesizing it (incorrectly) using (overflowing) * and /. The correct fix, to retain precision, is to implement "u*/" using (double-precision) um* and um/mod .
  • 2994 OLPC XO-1 XO-1.5 - restore normal sweep audio test volume, <trac>11846</trac>. A multiply overflowed 32-bits in set-period. Regression introduced in svn 2260.
  • 2991 OLPC - lid close consistent across models, made into common code, <trac>11095</trac>,
  • 2989 OLPC <trac>11902</trac> - ALPS touchpad driver - use mouse emulation mode on initial open so the menu works, switching to ALPS mode only during selftest.
  • 2987 OLPC - add .os command for test bed management
  • 2985 OLPC - remove USB serial adapter keyboard support from all models, <trac>11871</trac> <trac>11887</trac>.


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  q3c07 ...   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  q3c07 ...   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

  • 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:\q3c07.rom
  • if the downloaded file is on an external SD card:
 flash sd:\boot\q3c07.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,
su
cd /versions/boot/current/boot/
wget http://dev.laptop.org/pub/firmware/q3c07/q3c07.rom
  • 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\q3c07.rom
  • if the file is on the internal SD card of an XO-1.5 or XO-1.75:
flash int:\boot\q3c07.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.

  • 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\q3c07\q3c07.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.