Hi all,
Richard and I spent most of this evening chasing a suspected hardware problem that turned out to be not a hardware problem, but a flashrom problem.
Basically, I had made a copy of the rom with flashrom earlier today, and Richard soldered a PLCC socket onto our board this evening. After that, the board booted fine, but when reading out the rom image with flashrom again, it came up as slightly different - 115 bytes of difference out of 512K.
Eventually, we realized that the image we read out *changed after every boot*. We also diffed the image that is downloadable from Gigabyte of this particular BIOS revision, and it's nothing like what flashrom returns. While they are the same size, the flashrom copy looks like it is uncompressed (and only part of the real BIOS), while the downloadable image has hardly any recognizable strings in it - it's probably compressed somehow.
It looks like flashrom is not disabling shadow properly. This is probably related to my patch of earlier today that added a new pci id for this particular board's MCP55 (0x0360). Flashrom only knew about 0x0364 and 0x0367 for the MCP55.
I also saw a patch from Ed Swierk a couple of weeks ago, which added a whole bunch of PCI ids for the MCP55 (among which the 0x0360), but was never applied to the tree.
Can someone who knows the MCP55 have a look at the enable_flash_mcp55 function in flash_enable.c and figure out what's wrong?
Yinghai, can you tell us which board(s) you've tested the enable_flash_mcp55 function on?
Thanks, Richard and Ward.