<div dir="ltr">This is fantastic!<div><br></div><div>I hope you can write this up for the coreboot wiki ...</div><div><br></div><div>ron</div></div><br><div class="gmail_quote"><div dir="ltr">On Thu, Sep 15, 2016 at 12:24 PM Trammell Hudson <<a href="mailto:hudson@trmm.net">hudson@trmm.net</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Mon, Sep 12, 2016 at 09:27:18PM +0000, Peter Stuge wrote:<br>
> Trammell Hudson wrote:<br>
> > I've experimented with clearing additional bits, from 0x3000 to 0x10000<br>
> > with the same results.  If I were really motivated I might binary search<br>
> > how much of the firmware it needs...<br>
><br>
> That would be interesting.<br>
<br>
After a fairly brief binary search, I have determined a significantly<br>
reduced chunk of code required to have the Intel Management Engine bring<br>
up the hardware and then stay in the "ROM Phase".  This also allowed<br>
me to adjust the flash descriptor to give an extra 3 MB of storage to<br>
coreboot for my payload, as well as removed some of the problematic<br>
ME applications.<br>
<br>
The only piece that must be present for my x230 to function is the 512 KB<br>
FTPR partition at offset 0x183000, which contains these compressed<br>
modules (some Huffman, some LZMA):<br>
<br>
      'UPDATE' 000001BE<br>
      'ROMP' 0000070A<br>
      'BUP' 0000E064<br>
      'KERNEL' 00021B62<br>
      'POLICY' 00016AE2<br>
      'HOSTCOMM' 00006DDB<br>
      'RSA' 00005255<br>
      'CLS' 00005791<br>
      'TDT' 000066E5<br>
      'FTCS' 00004680<br>
      'ClsPriv' 000003E1<br>
      'SESSMGR' 0000E909<br>
<br>
This means that the ME no longer has any network stack (stored in the<br>
NFTP partition that has been removed), nor the protected video path<br>
or JCOM modules from the MDMV parition.  I do not know if the various<br>
anti-theft and timeout measures are also now neutralized.<br>
<br>
If I leave the firmware partition table at offset 0x3000 in place,<br>
the ME faults after bringup (but the system continues to function).<br>
Without the partition table it stays in the ROM phase.  I'm not sure if<br>
one outcome is preferable to the other.<br>
<br>
Relocating the FTPR partition did not work unfortunately, so there is<br>
some wasted space.<br>
<br>
--<br>
Trammell<br>
<br>
<br>
--<br>
coreboot mailing list: <a href="mailto:coreboot@coreboot.org" target="_blank">coreboot@coreboot.org</a><br>
<a href="https://www.coreboot.org/mailman/listinfo/coreboot" rel="noreferrer" target="_blank">https://www.coreboot.org/mailman/listinfo/coreboot</a><br>
</blockquote></div>