From 1e07d74d562d72247af3a5567c2902a8ac1e418d Mon Sep 17 00:00:00 2001
From: Francis Rowe
@@ -347,6 +356,52 @@ Verifying flash... VERIFIED.
+ sgsit found out about a pin called GPIO33, which can be grounded to disable the flashing protections + by the descriptor and stop the ME from starting (which itself interferes with flashing attempts). + The theory was proven correct; however, it is still useless in practise. +
+
+ Look just above the 7 in TP37 (that's GPIO33):
+
+
+ By default we would see this in lenovobios, when trying flashrom -p internal -w rom.rom: +
++FREG0: Warning: Flash Descriptor region (0x00000000-0x00000fff) is read-only. +FREG2: Warning: Management Engine region (0x00001000-0x005f5fff) is locked. ++
+ With GPIO33 grounded during boot, this disabled the flash protections as set + by descriptor, and stopped the ME from starting. The output changed to: +
++The Flash Descriptor Override Strap-Pin is set. Restrictions implied by +the Master Section of the flash descriptor are NOT in effect. Please note +that Protected Range (PR) restrictions still apply. ++
+ The part in bold is what got us. This was still observed: +
++PR0: Warning: 0x007e0000-0x01ffffff is read-only. +PR4: Warning: 0x005f8000-0x005fffff is locked. ++ +
+ It is actually possible to disable these protections. Lenovobios does, + when updating the BIOS (proprietary one). One possible way to go about this + would be to debug the BIOS update utility from Lenovo, to find out + how it's disabling these protections. Some more research is available here: + http://www.coreboot.org/Board:lenovo/x200/internal_flashing_research +
+