On Fri, Aug 10, 2007 at 06:58:06PM -0700, Ed Swierk wrote:
All of this sounds ridiculously unlikely, and without understanding the details of the flash protocols it's hard to know whether I'm misdiagnosing the problem.
No, your diagnosis is correct.
1. flashrom needs to do certain writes in order to read the device ID from an SST28SF040 chip. (Although they don't seem to exist. Datasheet?)
2. When the ID fails noone knows what effect those certain writes had on the system. :\
This isn't safe. Tricky.
The attached patch removes the seemingly unnecessary restoring of the value at location 0 in probe_28sf040(), and indeed fixes the problem.
We can't say if that restore really is neccessary or not. Erring on the side of caution would be good, but the damage may already have been done by those certain writes that are needed to do the ID.
Maybe we should just not probe for 28sf040 by default? It's a really old chip.
//Peter