Difference between revisions of "Board:lenovo/t520"

From coreboot
Jump to navigation Jump to search
 
(25 intermediate revisions by 6 users not shown)
Line 1: Line 1:
== Status ==
== Status ==


Issues:
[[Intel_Native_Raminit]] has it's own status page.
* no MRC cache (longer boot time)
* yellow USB port isn't powered in power-off state.
* S3 (Suspend to RAM) - system powers off
* Discrete GPU not supported
* DisplayPort only connected to Discrete GPU
* TPM. At the moment there is only support a basic support inside coreboot...
* Windows hung while boot


Tested:
{{Status|
* Ultrabay SATA
* RAM module combinations of mrc: 4G+0, 0+4G, 8G+0, native: 4G+0, 8G+0
* USB ports
* Video (internal)
* ExpressCard slot (including hot-plugging)
* Gigabit LAN
* Mini-PCIe slot WLAN
* Linux (through SeaBIOS-as-payload)
* Trackpoint & Touchpad
* Fn hotkeys
* Thinklight
* Bluetooth
* SD card slot
* Sound (integrated speakers, integrated mic, external headphones, external mic)
* Fingerprint reader


Not tested:
|CPU_status = OK
* Firewire
|CPU_comments = Support both Sandy Bridge and Ivy Bridge
* eSATA
|CPU_L1_status = OK
* mSATA
|CPU_L1_comments = Always on
* USB WWAN
|CPU_L2_status = OK
* Thermal management
|CPU_L2_comments = Always on
* Webcam
|CPU_L3_status = N/A
* Dock
|CPU_multiple_status = N/A
* VGA output
|CPU_multicore_status = OK
|CPU_virt_status = OK


== proprietary components status ==
|RAM_EDO_status = N/A
|RAM_SDRAM_status = N/A
|RAM_SODIMM_status = N/A
|RAM_DDR_status = N/A
|RAM_DDR2_status = N/A
|RAM_DDR3_status = OK
|RAM_DDR3_comments = Native
|RAM_dualchannel_status = OK
|RAM_ecc_status = N/A
 
|IDE_status = N/A
|IDE_CF_status = N/A
|IDE_25_status = N/A
|CDROM_DVD_status = N/A
|SATA_status = OK
|SATA_comments =
|Onboard_SCSI_status = N/A
|USB_status = OK
|USB_comments =
|Onboard_VGA_status = OK
|Onboard_ethernet_status = OK
|Onboard_audio_status = OK
|Onboard_audio_comments = integrated speakers, integrated mic, external headphones, external mic
|Onboard_modem_status = N/A
|Onboard_firewire_status = Untested
|Smartcard_status = N/A
|Onboard_CF_status = N/A
|Onboard_PCMCIA_status = OK
|Onboard_Wifi_status = OK
|Onboard_Bluetooth_status = OK
 
|ISA_cards_status = N/A
|AMR_cards_status = N/A
|Mini_PCI_cards_status = N/A
|Mini_PCI_cards_comments =
|PCIX_cards_status = N/A
|AGP_cards_status = N/A
|PCI_cards_status = N/A
|PCIE_x1_status = N/A
|PCIE_x1_comments =
|PCIE_x2_status = N/A
|PCIE_x4_status = N/A
|PCIE_x8_status = N/A
|PCIE_x16_status = OK
|PCIE_x32_status = N/A
|HTX_status = N/A
 
|Floppy_status = N/A
|COM1_status = N/A
|COM2_status = N/A
|PP_status = N/A
|PS2_keyboard_status = N/A
|PS2_mouse_status = N/A
|Game_port_status = N/A
|IR_status = N/A
|Speaker_status = OK
|DiskOnChip_status = N/A
 
|Trackpoint_status = OK
|Touchpad_status = OK
|FnHotkeys_status = OK
|Fingerprint_status = OK
 
|Docking_VGA_status = OK
|Docking_LAN_status = OK
|Docking_USB_status = OK
|Docking_Audio_status = OK
|Docking_Displayport_status = OK
|Thinklight_status = OK
|Webcam_status = OK
 
|Sensors_status = OK
|Watchdog_status = OK
|Watchdog_comments =
|SMBus_status = OK
|CAN_bus_status = N/A
|CPUfreq_status = OK
|Powersave_status = N/A
|ACPI_status = Untested
|ACPI_comments =
|Reboot_status = OK
|Poweroff_status = OK
|Suspend_status = OK
|Suspend_comments = Suspend to RAM
|Poweroff_comments =
|LEDs_status = N/A
|HPET_status = Untested
|RNG_status = Untested
|WakeOnModem_status = N/A
|WakeOnLAN_status = Untested
|WakeOnKeyboard_status = Untested
|WakeOnMouse_status = Untested
|Flashrom_status = OK
|Flashrom_comments = ST/numonyx M25PX64VG 8 MiB VDFPN8 package.
 
}}
 
==== Issues ====
* TPM. At the moment there is only basic support inside coreboot...
* Boot time issues ( keyboard rest timeout )
* ultrabay hot plug (event missing?)
* some power management states missing
 
== Nvidia GPU ==
State of dual graphics on Lenovo Notebooks: [[Board:lenovo/Nvidia_Optimus]]
 
==== Tested OS ====
* Linux (through SeaBIOS-as-payload and GRUB-as-payload)
* Windows (version>=7, through SeaBIOS as payload with proprietary VGA BIOS)
 
== Proprietary Components Status ==
* CPU Microcode
* CPU Microcode
* 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)
* FDT(Flash Descriptor Table) => Always needed
* ME(Management Engine) => you do not have to touch it(just leave it where it is)
* ME(Management Engine) => you do not have to touch it(just leave it where it is)
* GbE(Gigabit Ethernet embedded mac) =>  you do not have to touch it(just leave it where it is)
* GbE(Gigabit Ethernet embedded mac) =>  you do not have to touch it(just leave it where it is)


== Code ==
== Building Firmware ==
* The code has been merged into coreboot master
Please have a look at [[Intel_Sandybridge_Build_Tutorial]].


  $ git clone http://review.coreboot.org/p/coreboot
== Flashing ==
T520 has a ST / numonyx M25PX64VG 8 MiB flash chip in a VDFPN8 package or a Winbond W25Q64.V 8MiB flash chip in a SOIC-8 package.


== Flashing ==
All Battery's and the Power-supply must be disconnected before flashing.
T520 has a ST / numonyx M25PX64VG 8 MiB flash chip in a VDFPN8 package.


Next to the flash chip is a connector solder place "J100" where it is connected to.
Next to the flash chip is a connector solder place "J100" where it is connected to.


  1 N/C
  -------- side to the screen    --------
  2 N/C
  NC  VCC  HOLD  CLK  MOSI
  3 /CS
  NC  CS   MISO  WP    GND
  4 VCC
  -------- side to the palm rest --------
  5 MISO
 
  6 /HOLD
We can see that the connector is very similar to an SOIC-8 flash pinout.
  7 /WP
 
  8 CLK
  VCC    -- 8 --+-+-- 1 -- CS
  9 GND
  HOLD  -- 7 --+ +-- 2 -- MISO
10 MOSI
  CLK     -- 6 --+ +-- 3 -- WP
  MOSI  -- 5 --+-+-- 4 -- GND
 
Here are two picture showing the J100 solder place and a connector soldered to it.
 
[[File:J100.jpg|400px]]
[[File:J100_soldered.jpg|400px]]


Flash layout:
Flash layout:

Latest revision as of 13:39, 31 December 2017

Status

Intel_Native_Raminit has it's own status page.

Device/functionality Status Comments
CPU
CPU works OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Support both Sandy Bridge and Ivy Bridge
L1 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Always on
L2 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Always on
L3 cache enabled OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Multiple CPU support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Multi-core support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Hardware virtualization OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
RAM
EDO OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
SDRAM OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
SO-DIMM OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
DDR OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
DDR2 OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
DDR3 OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Native
Dual channel support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
ECC support OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board Hardware
On-board IDE 3.5" OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board IDE 2.5" OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board SATA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board SCSI OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board USB OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board VGA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board Ethernet OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board Audio OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK integrated speakers, integrated mic, external headphones, external mic
On-board Modem OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board FireWire OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
On-board Smartcard reader OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board CompactFlash OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
On-board PCMCIA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board Wifi OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board Bluetooth OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
On-board SD card reader OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Add-on slots/cards
ISA add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Audio/Modem-Riser (AMR/CNR) cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Mini-PCI add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Mini-PCI-Express add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
PCI-X add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
AGP graphics cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x1 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x2 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x4 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x8 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PCI Express x16 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
PCI Express x32 add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
HTX add-on cards OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Legacy / Super I/O
Floppy OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Serial port 1 (COM1) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Serial port 2 (COM2) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Parallel port OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PS/2 keyboard OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PS/2 mouse OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Game port OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Infrared OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
PC speaker OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
DiskOnChip OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Input
Trackpoint OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Touchpad OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Fn Hotkeys OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Fingerprint Reader OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Laptop
Docking VGA OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Docking LAN OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Docking USB OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Docking Audio OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Docking Displayport OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Thinklight OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Webcam OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Miscellaneous
Sensors / fan control OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Hardware watchdog OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
SMBus OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
CAN bus OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
CPU frequency scaling OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Other powersaving features OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
ACPI OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Reboot OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Poweroff OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK
Suspend OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK Suspend to RAM
Nonstandard LEDs OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
High precision event timers (HPET) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Random number generator (RNG) OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Wake on modem ring OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | N/A
Wake on LAN OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Wake on keyboard OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
Wake on mouse OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Untested
TPM OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | Unknown
Flashrom OK=lime | TODO=red | No=red | WIP=orange | Untested=yellow | N/A=lightgray | yellow }}" | OK ST/numonyx M25PX64VG 8 MiB VDFPN8 package.

Issues

  • TPM. At the moment there is only basic support inside coreboot...
  • Boot time issues ( keyboard rest timeout )
  • ultrabay hot plug (event missing?)
  • some power management states missing

Nvidia GPU

State of dual graphics on Lenovo Notebooks: Board:lenovo/Nvidia_Optimus

Tested OS

  • Linux (through SeaBIOS-as-payload and GRUB-as-payload)
  • Windows (version>=7, through SeaBIOS as payload with proprietary VGA BIOS)

Proprietary Components Status

  • CPU Microcode
  • FDT(Flash Descriptor Table) => Always needed
  • ME(Management Engine) => you do not have to touch it(just leave it where it is)
  • GbE(Gigabit Ethernet embedded mac) => you do not have to touch it(just leave it where it is)

Building Firmware

Please have a look at Intel_Sandybridge_Build_Tutorial.

Flashing

T520 has a ST / numonyx M25PX64VG 8 MiB flash chip in a VDFPN8 package or a Winbond W25Q64.V 8MiB flash chip in a SOIC-8 package.

All Battery's and the Power-supply must be disconnected before flashing.

Next to the flash chip is a connector solder place "J100" where it is connected to.

-------- side to the screen     --------
NC  VCC  HOLD  CLK  MOSI
NC  CS    MISO  WP    GND
-------- side to the palm rest -------- 

We can see that the connector is very similar to an SOIC-8 flash pinout.

VCC     -- 8 --+-+-- 1 -- CS
HOLD  -- 7 --+ +-- 2 -- MISO
CLK     -- 6 --+ +-- 3 -- WP
MOSI  -- 5 --+-+-- 4 -- GND

Here are two picture showing the J100 solder place and a connector soldered to it.

J100.jpg J100 soldered.jpg

Flash layout: FLREG0: 0x00000000

 Flash Region 0 (Flash Descriptor): 00000000 - 00000fff 

FLREG1: 0x07ff0500

 Flash Region 1 (BIOS): 00500000 - 007fffff 

FLREG2: 0x04ff0003

 Flash Region 2 (Intel ME): 00003000 - 004fffff 

FLREG3: 0x00020001

 Flash Region 3 (GbE): 00001000 - 00002fff 

FLREG4: 0x00000fff

 Flash Region 4 (Platform Data): 00fff000 - 00000fff (unused)


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