Difference between revisions of "Board:lenovo/t420"

From coreboot
Jump to: navigation, search
(ivb test, bug #6)
Line 1: Line 1:
 
== Status ==
 
== Status ==
Thanks for your interest in Lenovo T420 port. The code has not been merged yet, you can see the code on [http://review.coreboot.org/#/c/11765/ gerrit] and check it out.  
+
Thanks for your interest in Lenovo T420 port. The code has not been merged yet, you can see the code on [http://review.coreboot.org/#/c/11765/ gerrit].  
  
 
ATTENTION: You must cherry-pick [http://review.coreboot.org/#/c/12112/ this patch] before building. (It's merged to upstream, you can cherry-picked the T420 port on the upstream coreboot code.)
 
ATTENTION: You must cherry-pick [http://review.coreboot.org/#/c/12112/ this patch] before building. (It's merged to upstream, you can cherry-picked the T420 port on the upstream coreboot code.)
Line 21: Line 21:
 
* bluetooth
 
* bluetooth
 
* Linux (through GRUB-as-payload)
 
* Linux (through GRUB-as-payload)
* Windows (Sandy Bridge only, through SeaBIOS using a VGA blob from X230 vendor firmware, but still do not support Ivy Bridge)
+
* Windows (through SeaBIOS as payload or chainload SeaBIOS from GRUB payload, using a VGA BIOS)
 
* DVD-ROM drive
 
* DVD-ROM drive
 
* SD card slot
 
* SD card slot
Line 63: Line 63:
  
 
== Ivy Bridge processor support ==
 
== Ivy Bridge processor support ==
Sandy Bridge and Ivy Bridge processor use the same socket, so an Ivy Bridge processor can be installed. Up to now only native graphics init works normally, using a VGA option ROM from an Ivy Bridge laptop (I tested it with an X230 VGA option ROM) still only supports Sandy Bridge graphics. You should use a [http://review.coreboot.org/#/c/12087/ patch on gerrit] so that coreboot can use the correct code for native graphics init.
+
Sandy Bridge and Ivy Bridge processor use the same socket, so an Ivy Bridge processor can be installed. To use native graphics init, you should use a [http://review.coreboot.org/#/c/12087/ patch on gerrit] so that coreboot can use the correct code for native graphics init. You can also use a VGA option ROM with SeaBIOS, then you should set the correct PCI ID at `VGA device PCI IDs' setting.
  
 
Up to now, an i5-3340M and an i7-3720QM(QS version) is tested.
 
Up to now, an i5-3340M and an i7-3720QM(QS version) is tested.

Revision as of 03:34, 4 January 2016

Status

Thanks for your interest in Lenovo T420 port. The code has not been merged yet, you can see the code on gerrit.

ATTENTION: You must cherry-pick this patch before building. (It's merged to upstream, you can cherry-picked the T420 port on the upstream coreboot code.)

Issues:

  • The USB beside express card cannot funtion after S3 resume if CONFIG_USBDEBUG is set (work around: reload ehci-pci module)
  • Badly seated RAM may prevent booting (not really a problem but coreboot is more suspicious to this than vendor BIOS)
  • Boot failure with quad core Ivy Bridge processor with 8G DDR3L module (Bug #6, work around:revert 9f1fbb9a3002e8d74d53d7973bd1c7e3d4879238)

Tested:

  • Ivy Bridge processor (see below)
  • RAM module combinations of 2G+0, 4G+0, 8G+0, 0+8G, 4G+8G, 8G+8G
  • S3 (Suspend to RAM)
  • msata
  • USB
  • Video (internal)
  • Sound (integrated speakers, integrated mic, external headphones, external mic)
  • LAN
  • mini-PCIe slots (wlan)
  • bluetooth
  • Linux (through GRUB-as-payload)
  • Windows (through SeaBIOS as payload or chainload SeaBIOS from GRUB payload, using a VGA BIOS)
  • DVD-ROM drive
  • SD card slot
  • trackpoint
  • touchpad
  • webcam
  • Fn hotkeys (backlight control, suspend, thinklight)
  • Thinklight
  • dock (tested with a TYPE 4337)

Not Tested:

  • Video (VGA and Displayport)
  • Expresscard slot (including hotplugging)
  • mini pci-e wwan
  • Fingerprint reader.
  • Thermal management

proprietary components status

  • CPU Microcode (optional): you may need it if your system is unstable (especially you're using a ES/QS processor)
  • VGA option rom (optional): you need it if you want graphics in SeaBIOS but most payloads should work without it (text mode or corebootfb mode)
  • ME(Management Engine) => you do not have to touch it(just leave it where it is)
  • EC(Embedded Controller) => you do not have to touch it(just leave it where it is)

Flashing

T420 has an SOIC-8 flash chip of 8M. It's subdivided in roughly in 3 parts:

  • Descriptor (12K)
  • ME firmware (5M-12K)
  • System flash (3M)

ME firmware is not readable. Vendor firmware locks the flash and so you need to flash externally (unless until someone figures out a way around it).

Proceeds as follows:

  • Turn off your laptop, remove battery and AC adapter.
  • Disassemble the T420 laptop as the hardware maintenance manual says. You have to take out the mainboard, because the flash chip is under the magnesium stucture frame.
  • Connect your external SPI flasher to the SPI chip and flash it. Using an SOIC-8 clip is recommended.

When the laptop is running coreboot, you can reflash the firmware using flashrom:

 flashrom -p internal:laptop=force_I_want_a_brick -w <coreboot image>

Ivy Bridge processor support

Sandy Bridge and Ivy Bridge processor use the same socket, so an Ivy Bridge processor can be installed. To use native graphics init, you should use a patch on gerrit so that coreboot can use the correct code for native graphics init. You can also use a VGA option ROM with SeaBIOS, then you should set the correct PCI ID at `VGA device PCI IDs' setting.

Up to now, an i5-3340M and an i7-3720QM(QS version) is tested.