On Fri, Nov 25, 2011 at 8:10 AM, Pontus Rodling <frigolit@frigolit.net> wrote:
Hi!
flashrom told me to send you guys this, so here it is.

I'm getting a transaction error when trying to read the (fully supported
according to the wiki) W25Q64 flash chip on a Intel H57 chipset which is
marked as untested.
I tried both using swseq and hwseq. Both results are attached.

Looks like the Management Engine region is totally locked (from both reads and writes), so it will fail whenever flashrom tries to read/write in that region;
0x5C: 0x05ff0001 (FREG2: Management Engine)
0x00001000-0x005fffff is locked

We need to do some rather ugly stuff to hack around that. I have a very ugly hack that applies to the Chromium OS branch you can try:
# clone chromium os branch of flashrom
git clone http://git.chromium.org/chromiumos/third_party/flashrom.git flashrom-cros && cd flashrom-cros

# apply patch from https://gerrit.chromium.org/gerrit/#change,12117
git pull https://gerrit.chromium.org/gerrit/p/chromiumos/third_party/flashrom refs/changes/17/12117/1

With that patch, flashrom will fill in unreadable parts with 0xff bytes, and will not attempt to erase/write those parts. Verbose output will show "WD" (Write Denied) for regions that are unwriteable.