[LinuxBIOS] r2793 - trunk/util/superiotool
uwe at hermann-uwe.de
Sun Sep 23 19:59:51 CEST 2007
On Sun, Sep 23, 2007 at 05:16:11PM +0200, Carl-Daniel Hailfinger wrote:
> > Fix up and generalize the ITE IT8708F code. It was only working out of
> > pure luck (and broken code elsewhere). Needs some more fixing.
> > Add more LDN descriptions to various Super I/Os.
> > Signed-off-by: Uwe Hermann <uwe at hermann-uwe.de>
> > Acked-by: Uwe Hermann <uwe at hermann-uwe.de>
> Please provide correct check-in comments.
Yep, this one was a bit crappy, sorry.
> First of all, IT8708F was working as designed.
I'm not quite sure. Here's why I thought it was broken:
The IT8708F code path in fintek.c was never used/reached. The reason
that I still got a dump on my test system was that the code in
ite.c (which had an 0x8708 case) was reached and printed the dump.
Now, this was not supposed to work at all! The IT8708F has the enable
sequence 0x87 0x87 whereas the code in ite.c used some other sequence,
so dumping the IT8708F should have failed.
However, it _accidentally_ still worked, because (as I found out later)
the 'exit config mode' code was not called in all code paths and for
all test runs as it should have been. In other words, some earliers
code (probably from Fintek/Winbond) did the 0x87 0x87 init, but not
the respective 'exit config mode' sequence (0xaa, I think).
Thus, the mode was still active when the IT8708F code was reached and
it magically worked...
That's why the commit comment said "it was only working out of pure luck",
but I should have been more verbose there...
http://www.hermann-uwe.de | http://www.holsham-traders.de
http://www.crazy-hacks.org | http://www.unmaintained-free-software.org
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 189 bytes
Desc: Digital signature
More information about the coreboot