OLPC Firmware q4c05

From OLPC

Revision as of 23:07, 6 October 2012 by FGrose (Talk | contribs)
(diff) ← Older revision | Current revision (diff) | Newer revision → (diff)
Jump to: navigation, search
  This page is monitored by the OLPC team.

Contents

OLPC Firmware Release q4c05

Works on XO-1.75 B1 and C1 only. Do not use on A2 or A3.

This is a maintenance release for the C1 build, focusing on support for Linux suspend/resume testing, but also including:

  • new EC firmware which shortens the duration of the LED blinks for the light sensor, and adds support for powerd for automatic backlight shutdown in sunlight,
  • fixes for save-mfg-data and restore-mfg-data,
  • enable keyboard interrupt using del key on mechanical keyboards,
  • keep the storage LED lit during fs-update and flash,
  • show the clock in the banner,
  • test fast mode access to accelerometer.
Download q4c05.rom
Build date time 2011-11-21 17:42:12
Source revision 2698
EC version 0.3.05
CForth version 89de5064
Wireless firmware version Libertas thinfirm 9.0.7.p2

Changes since q4c04

Open Firmware

  • 2697 OLPC XO-1.75 - adopt EC 0.3.05 from 16th November
  • 2696 OLPC XO-1.75 - Configurable sleep code, configured for manual memory controller wakeup
  • 2695 OLPC - instance buffer scan-ssid is d# 34 bytes long, so the maximum length check in set-ssid was invalid, (found during code review only)
  • 2694 OLPC - save-mfg-data, restore-mfg-data, use new flash interface, use u:\ instead of disk:\, tested on XO-1, XO-1.5, XO-1.75.
  • 2693 OLPC XO-1.75 - community testers did not know how to use the accelerometer test, so add a test environment directive.
  • 2692 OLPC XO-1.75 - svn 2676 introduced a problem with EC communication by loading some code at the wrong time.
  • 2691 OLPC trac ticket #11427 - stack effect comment fix
  • 2690 OLPC trac ticket #11427 - test-all stopped working at the first device that had no reg property, caused by stack imbalance in most-tests premature exit paths
  • 2688 OLPC trac ticket #11427 - selftests can now be interrupted by typing ESC during the inter-test delay.
  • 2686 OLPC trac ticket #11423 - Manufacturing tests - merged common code for manufacturing tests into one file and split the differences out into platform-specific "testitems.fth" files. Also implemented an autorun facility for use in secure mode, per OLPC trac ticket #11423.
  • 2685 ARM - removed duplicate definition in cpu/arm/scc.fth - no functional change.
  • 2684 OLPC XO-1.75 - report write protected EC and flash correctly, was "EDI byte in timeout", allow time for EC to finish reset
  • 2683 OLPC - enable the keyboard interrupt on mechanical keyboards, using the del key, see ticket #10318.
  • 2682 OLPC - keep storage LED lit during fs-update and flash, by turning off light sensor
  • 2681 OLPC - fix link
  • 2680 OLPC XO-1.75 - refix ticket #11215, regression introduced in -r2561
  • 2679 OLPC - show RTC in banner, cache banner internal storage result, show value of RTC in test. ticket #11424
  • 2678 OLPC XO-1.75 - fixed high speed TWSI operation based on new information about how the registers work.

CForth

EC

WLAN

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  q4c05 ...   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" game button held down. You will be asked to Release the game keys to continue. Release the "check" game button and watch carefully. For a short time the startup banner will be displayed, like this:

 OLPC ..., ... memory installed, ..., S/N SHF7250024D
 OpenFirmware  q4c05 ...   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:\q4c05.rom
  • if the downloaded file is on an external SD card:
 flash sd:\boot\q4c05.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/q4c05/q4c05.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\q4c05.rom
  • if the file is on the internal SD card of an XO-1.5 or XO-1.75:
flash int:\boot\q4c05.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\q4c05\q4c05.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.
Personal tools
  • Log in
  • Login with OpenID
About OLPC
About the laptop
About the tablet
Projects
OLPC wiki
Toolbox