From coreboot
Revision as of 11:22, 23 September 2014 by Fchmmr (talk | contribs) (wifi)
Jump to: navigation, search

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to Contributions welcome!

works fine with GNU/Linux, some ACPI issues with Windows needs to be fixed.

Lenovo ThinkPad T60

Both the

  • t60
  • t60p

Have been reported to boot coreboot.

Installation and Flashing

 Instructions on Installation and flashing the x60 or t60 

Pre-compiled ROM images

For easy installation, you do not need to build from source to flash coreboot on the T60 - but only if it has an Intel GPU. If it has an ATI graphics chipset, then libreboot will not work.

Also, be sure to have the correct LCD panel

The libreboot project has pre-compiled ROM images available which are updated regularly for this machine. These images already have the dd trick applied (for the bucts trick outlined in the link above) and the archives come with scripts to pre-patch flashrom.

Use this tutorial to flash them. NOTE: If you want to backup factory.bin (original Lenovo BIOS), follow coreboot's tutorial first, up to Step 2.

Wifi chipsets

By default, these machines typically come with an Intel wifi chipset which does not work at all without proprietary firmware blobs. These blobs are included in the Linux kernel on many distributions. Some (very rare) models come with an Atheros chipset that works without blobs. The Atheros and Intel chipsets also only support 802.11g networking.

After installing coreboot, you can replace the wifi chipset with an 802.11n chipset that works fully with free software, without needing proprietary software of any kind (in the kernel or otherwise).

Recommended wifi chipsets


This table needs review. I copied the x60 table and ran through it from memory, expresscard comes to mind...

Device/functionality Status Comments
CPU works OK
L1 cache enabled OK
L2 cache enabled OK
L3 cache enabled N/A
Multiple CPU support N/A
Multi-core support OK
Hardware virtualization OK
Dual channel support OK
ECC support N/A
On-board Hardware
On-board IDE 3.5" N/A
On-board IDE 2.5" N/A
On-board SATA OK
On-board SCSI N/A
On-board USB OK
On-board VGA OK
On-board Ethernet OK Intel 82573L
On-board Audio OK
On-board Modem Untested
On-board FireWire N/A
On-board Smartcard reader N/A
On-board CompactFlash N/A
On-board PCMCIA OK
On-board Wifi N/A
On-board Bluetooth N/A
On-board SD card reader N/A
Add-on slots/cards
ISA add-on cards N/A
Audio/Modem-Riser (AMR/CNR) cards N/A
PCI add-on cards N/A
Mini-PCI add-on cards OK
Mini-PCI-Express add-on cards Unknown
PCI-X add-on cards N/A
AGP graphics cards N/A
PCI Express x1 add-on cards N/A
PCI Express x2 add-on cards N/A
PCI Express x4 add-on cards N/A
PCI Express x8 add-on cards N/A
PCI Express x16 add-on cards N/A
PCI Express x32 add-on cards N/A
HTX add-on cards N/A
Legacy / Super I/O
Floppy N/A
Serial port 1 (COM1) OK located in docking station
Serial port 2 (COM2) N/A
Parallel port N/A
PS/2 keyboard N/A
PS/2 mouse N/A
Game port N/A
Infrared Untested
PC speaker N/A
DiskOnChip N/A
Trackpoint N/A
Touchpad N/A
Fn Hotkeys N/A
Fingerprint Reader N/A
Docking VGA N/A
Docking LAN N/A
Docking USB N/A
Docking Audio N/A
Docking Displayport N/A
Thinklight N/A
Webcam N/A
Sensors / fan control OK
Hardware watchdog N/A
CAN bus N/A
CPU frequency scaling OK
Other powersaving features OK
Reboot OK
Poweroff OK
Suspend OK
Nonstandard LEDs OK LEDs are controlled by Embedded Controller (EC). Working without special support.
High precision event timers (HPET) OK
Random number generator (RNG) N/A
Wake on modem ring Unknown
Wake on LAN Unknown
Wake on keyboard Unknown
Wake on mouse Unknown
TPM Unknown
Flashrom OK See Board:lenovo/x60/Installation

proprietary components status

  • CPU Microcode (optional?) - works fine without. See
  • VGA option rom (optional): Native graphics initialization (free replacement) is also available with this patch that is under review. Note that the replacement doesn't work yet with seabios but works with grub(as a payload) or libpayload based payloads. SeaBIOS can be used with SeaVGABIOS (coreboot linear framebuffer option in seabios menuconfig) but the native graphics implementation currently lacks INT 10H and VBT.
  • EC(Embedded Controller) => you do not have to touch it(just leave it where it is)


Non-free components replacements

  • Replace the non-free VGA option rom by making native graphics init work. See [1] (under review on 5345 changeset,]
  • Create a Native graphics<->VGA option rom. SeaVGABIOS (part of SeaBIOS) might be the answer. INT 10H and VBT are missing in native graphics.
  • Make backlight work without the non-free option rom. See 6731 on

Windows currently doesn't boot (STOP A5 error)

Windows 7 was tested and fails to boot at the moment.

The native graphics implementation lacks INT 10H and VBT, and GRUB cannot boot it. Booting with SeaBIOS+SeaVGABIOS results in graphical corruption (and no boot).

Booting with SeaBIOS and the VGA ROM (vbios) can be used to boot it, but booting ends with the message outlined here: STOP A5

More information can be found here

Text Mode

When using native graphics instead of the VBIOS, you can enable Text Mode in menuconfig, under Display.

Disable 'Keep VESA Framebuffer'. This is for booting payloads like MemTest86+ which expect text-mode graphics.

Use this patch.

Also, enable it for T60 with this patch

"whining" (buzzing) noise when idle

Use "idle=halt" (higher power consumption) or "processor.max_cstate=2" (higher power consumption, but not as bad) kernel parameter in GRUB.

Note: Boot without these options, and there will be a high pitched noise coming from the board when the system is idle. A better workaround is to boot without these options, and run sudo powertop

Under "tunables", set all options to "Good" settings. This kills the noise. By using this, power consumption falls lower: near the levels in Lenovo BIOS (better battery life).

You can also use sudo powertop --auto-tune instead.

Make backlight (Fn keys) control work with native gpu init

You first need native graphics support (free VBIOS replacement). Apply this patch using cherry pick on top of master.

See x60 notes and t60 notes.

This is one way to get backlight controls working. Another method is shown in changeset 6731 on If you use this, also apply this patch to fix uneven backlight levels: patch - also, apply this patch

Other things

  • Add support for more batteries in ACPI.
  • Make the wifi card and/or the laptop produce less heat.
  • Finish and merge support for thinkpad_acpi linux kernel module
  • Sometimes some dock USB port aren't initialized => fix that