GM45 Thinkpad Internal flashing research

From coreboot
Revision as of 20:50, 24 January 2015 by GNUtoo (talk | contribs)
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 https://doc.coreboot.org/. Contributions welcome!

Description

Here is a log of flashrom on the flash chip of an X200T In the log, we can see that the BIOS region is set read-write in the flash descriptor:

      Descr. BIOS ME GbE Platf.
BIOS    r     rw      rw   rw
ME      r         rw  rw     
GbE                   rw     

The issue is that the BIOS region is still partially locked:

0x74: 0x9fff07e0 PR0: Warning: 0x007e0000-0x01ffffff is read-only.

The flash descriptor probably cannot be reflashed easily from the x86 CPU, however messing with the ME partition is probably doable if we get luck with the BIOS: If we remove the RAM DIMM from slot0, the BIOS outputs an error message on the screen that asks to put the DIMM back and refuses to boot. I guess it's related to what mysteries_intel.txt (inside flashrom source ) was mentioning.

So I guess that either:

  • The BIOS can only be partially flashed at all.
  • The BIOS can be flashed by the vendor tools which probably reboots the computer when doing it. In that case the code doing the PR0 Locking could be located after the PR0 locked reagion.

Ideas

  • Try to see if, by remapping the GPU GTT we could get arround the PR registers issue.
  • Using suspend-resume
  • Using SMM/SMI