OLPC Firmware q3a07

From OLPC
Jump to: navigation, search
  This page is monitored by the OLPC team.

OLPC Firmware Release q3a07 - 2009-08-05

Download: q3a07.rom

Changes since q3a05 series

  • PC keyboard - Increased timeout values to cope with slow embedded controllers.
  • Via - fs-update now defaults to SD instead of IDE.
  • Use FIR upsampling filter for HD Audio.
  • PC keyboard driver - improved retry logic for keyboard commands.
  • Via fs-update speedups from Luke Gorrie.
  • IIR Filter - changed input length argument from #samples to /inbuf.
  • Via DSDT - wakeup changes from Paul Fox.
  • OLPC trac 9431 - fixed volume-setting for HDAudio driver, thanks to Luke.
  • IDE driver - added DMA write support.
  • Via - added "fs-update" command for OS installation.
  • SDHCI/SDMMC driver - reordered closing sequence so deferred writes get flushed before turning things off, thus avoiding command timeouts on close.
  • Kernel - fixed problem in file buffering that caused failures with "fputs" when the size of the input array was larger than the distance from the file buffer to the end of address space.
  • Via - fixed CMOS RAM high ban access (see trac 9431).
  • OLPC trac 9362 - setup-smbios for Linux boots for XO-1.
  • Via - The SMBIOS system-info table said OLPC 1 instead of OLPC 1.5 .
  • OLPC trac #9401 - Via - Fixed test-all crash by removing redundant mmu-map from memory node selftest method in probemem.fth
  • Via - Fixed test /audio
  • IP stack - fixed bug in broadcast-ip-addr? introduced by a recent checkin. Fixed load order in XO-1 fw.bth.
  • Fixed commentary typos. Tip o' the hat to James Cameron.
  • Via ACPI - reset using EC cmd66(0xdb) instead of port 92.
  • Fixed ext2 file creation problem.
  • OLPC trac #9409 - fixed ext2 symlink problems.
  • Via - omnibus checkin to enable support for numerous OLPC features that had been deferred, including pretty boot, security, startup sound.
  • Builder - added depends-on: command to handle dependencies for external compilers, and used it in new via/dsdt.bth .
  • Via DSDT - pgf's fixes for LID detect.
  • Via DSDT - Massive formatting cleanup, and switched to OLPC copyright and license, with Via's permission.
  • Via DSDT - Added pgf's code to use the EC command protocol instead of direct indexed I/O access.
  • Via - Fixed stack error that ruined the HPET base address
  • HOWTO_USB_boot: fixed error in syslinux usage description

  • EC code 1.9.7
  • Fix keyboard badness when pressing keys on cpu startup.
  • Unset the keyboard scan set xlate when the keyboard is powered off to match the state of the EnE controller.
  • Flip polarity of the power limit to be default of full scale.
  • Various code cleanup from pgf
  • unroll the service.c service calling loop to eliminate function pointer overhead. eliminate the null and wrapper routines that are called as service routines. Also eliminate their extern decls.
  • Catch soft off. Soft off is dictated by SUSC and MAIN_ON (SUSB) when the signals go into a specific state it means that the host has turned itself off and the EC should shut down the voltage regulators.
  • Fix the polarity of the SUSC high low reporting. It was inverted.
  • Compile option to disable timestamp printing. (if you need diagnostic stuff that has to go really fast)
  • Optimize the way the SCI timing reporting was happening the numbers reported by tMO now match the timestamps happening from MO L and MO H.

Open Firmware is svn 1286

EC code is version 1.9.7

WLAN firmware is 9.70.7.p0

Which Firmware Do You Have?

If your machine is not in secure mode, the firmware version is displayed in the startup banner, as in:

 OLPC XO 1.5, 1 GiB memory installed, S/N SHF7250024D
 OpenFirmware  CL1   Q3A04 Q3A
                     ^^^^^

If your machine is in secure mode, you can go to the Terminal activity and type

 cat /ofw/openprom/model

If your machine is in secure mode but the OS will not start, just go ahead and try to upgrade the firmware anyway. The procedure is safe and will not do anything if you already have up-to-date firmware.

You can see the firmware version in secure mode by powering up with the "check" game button held down.

You can also go to the main Sugar screen, click on the little man and select "about this XO"


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:\q3a07.rom
  • if the downloaded file is on an external SD card:
 flash sd:\boot\q3a07.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/q3a07/q3a07.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\q3a07.rom
  • if the file is on the internal SD card of an XO-1.5 or XO-1.75:
flash int:\boot\q3a07.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\q3a07\q3a07.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.