From 82e8d082e74de2e17896a9fef9a2949d0c131db8 Mon Sep 17 00:00:00 2001 From: Francis Rowe Date: Mon, 22 Dec 2014 06:42:35 -0500 Subject: docs/hcl/x200_remove_me.html: Add info about faulty Gbe regions --- diff --git a/docs/hcl/x200_remove_me.html b/docs/hcl/x200_remove_me.html index b1a88e2..0cef79b 100644 --- a/docs/hcl/x200_remove_me.html +++ b/docs/hcl/x200_remove_me.html @@ -264,18 +264,24 @@ DD CC 18 00 11 20 17 00 DD DD 18 00 12 20 17 00

GBE region: change MAC address

- According to the datasheet, it's supposed to add up to 0xBABA but can actually be 0x3ABA. - Either the checksum doesn't matter or the most significant bit of the checksum isn't checked. + According to the datasheet, it's supposed to add up to 0xBABA but can actually be others on the X200. https://communities.intel.com/community/wired/blog/2010/10/14/how-to-basic-eeprom-checksums

"One of those engineers loves classic rock music, so he selected 0xBABA"

+

In honour of the song Baba O'Reilly by The Who apparently. We're not making this stuff up...

+

- 0xBABA and 0x3ABA only differ by the most significant bit. The checksum of the GBe region from an X200S - was found to be 0x34BA; again, it should be 0xBABA. 34BA is actually BABA in L33T speak (look it up). + 0x3ABA, 0x34BA, 0x40BA and more have been observed in the main Gbe regions on the X200 factory.rom dumps. + The checksums of the backup regions match BABA, however. +

+ +

+ By default, the X200 (as shipped by Lenovo) actually has an invalid main gbe checksum. The backup gbe region is correct, + and is what these machines default to. Basically, you should do what you need on the *backup* gbe region, and + then correct the main one by copying from the backup.

-

In honour of the song Baba O'Reilly by The Who apparently. We're not making this stuff up...

Look at resources/utilities/ich9deblob/ich9deblob.c. -- cgit v0.9.1