[coreboot] [PATCH] v3: Add/use global PNP enter/exit functions forSuper I/Os

Uwe Hermann uwe at hermann-uwe.de
Tue Nov 18 23:36:41 CET 2008

On Tue, Nov 18, 2008 at 02:16:32PM -0700, Myles Watson wrote:
> >> for fintek:
> >> -static void pnp_enter_conf_state(struct device *dev)
> >> -{
> >> -       outb(0x87, dev->path.pnp.port);
> >> -}
> >>
> >> -       pnp_enter_conf_state(dev);
> >> +       pnp_enter_8787(dev);
> >>
> >> I don't know that much about SuperIOs, but does it matter that you
> >> replaced
> >> one outb with two?
> >
> >
> > No, it doesn't, I've used two 0x87s on actual hardware.

Yep. Also, the same is true for some SMSC Super I/Os which use one
0x55, but 0x55,0x55 will also work. This will just make it "enter"
twice and doesn't seem to be a problem.

> Good to know.  Interesting that the second one matters to the ite chip.

Most ITE chips use a four byte sequence to enter config mode, and the
datasheet explicitly defines which four bytes you have to use (depends on
the chip _and_ on the config port the chip is located on, which is
board-specific). If you change one of the bytes, it won't work anymore,
whereas for the 0x87 vs. 0x87,0x87 is still works, it simply works
_twice_ :)

> >> Acked-by: Myles Watson <mylesgw at gmail.com>

Thanks, r1044.

http://www.hermann-uwe.de  | http://www.holsham-traders.de
http://www.crazy-hacks.org | http://www.unmaintained-free-software.org

More information about the coreboot mailing list