GM45 Thinkpad Internal flashing research

From coreboot
Revision as of 13:39, 14 June 2016 by GNUtoo (talk | contribs)
Jump to navigation Jump to 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!

Introduction

The goal is to be able to flash internally the x200 with Flashrom.

Anti-reflashing mechanisms

The Lenovo X200 uses the following mechanisms to prevent internal reflashing:

  • Flash descriptor: Set the flash descriptor read-only, locks the ME, and platform regions.
  • PR registers: Sets the BIOS bootblock read-only and prevent access to the platform region

Idea

The flash descriptor restrictions can be lifted by using the GPIO33. That would then permit us, once booted, to reflash all the flash chip but what is still covered by the PR registers. This should be enough to relocate coreboot/libreboot outside of the region covered by the PR registers.

Since the platform region would still be locked by the PR registers, flashrom will need to be patched not to touch it at all (it should not even try to read it).