On Tue, Jun 17, 2008 at 10:08:58PM -0400, Ward Vandewege wrote:
On Sat, Jun 07, 2008 at 04:29:13PM +0200, Peter Stuge wrote:
On Sat, Jun 07, 2008 at 04:07:29PM +0200, Stefan Reinauer wrote:
Ah, this is broken... flashrom should not continue when it found a chip in a given memory area already.
flashrom supports boards with more than one flash chip.
But perhaps we need to teach flashrom more about how chips can be connected. On boards with two chips, they can obviously not be on the same LPC bus for example. There would be a collision on the bus.
Ward and me investigated. The W29EE011 probe command is quite similar to the A49LF040A block erase command, but the last byte differs. A49LF040A seems to enter an undefined state when it receives such an unknown command. Sleeping the maximum A49LF040A timeout before sending the jedec ID exit command did not help.
It seems to me that the Amic chip is behaving badly.
Action plan?
- Penalize W29EE011 by never probing it without -c W29EE011
This sucks because the W29EE011 chip isn't the one misbehaving here. On the other hand, it does have a nasty product ID sequence.
Please find a patch attached that does just that.
And now for a revised copy that does not disable -c W29EE011 as well (thanks Peter!).
Thanks, Ward.