Re: Linux Post codes during runtime, possibly OT

Rogier Wolff
2001-01-27T21:01:30Z

H. Peter Anvin wrote:
> Rogier Wolff wrote:
> > H. Peter Anvin wrote:
> > > It output garbage to the 80h port in order to enforce I/O delays.
> > > It's one of the safe ports to issue outs to.

> > Yes, because it is reserved for POST codes. You can get "POST
> > debugging cards" that simply have a BIN -> 7segement encoder and two 7
> > segment displays on them. They decode 0x80. That's what it's for.

> Again, if you want to change it, find another safe port, test the hell
> out of it, an *PUBLICIZE IT* so noone will use it in the future.

I may have missed too much of the discussion, but I thought that the
idea was that some people noted that their POST-code-cards don't
really work all that well when Linux is running because Linux keeps on
sending garbage to port 0x80.

You seem to state that if you want POST codes, you should find a
different port, modify the code, test the hell out of it, and then
submit the patch.

That is NOT the right way to go about this: Port 0x80 is RESERVED for
POST usage, that's why it's always free. If people want to use it for
the original purpose then that is a pretty damn good reason to bump
the non-intended users of that port somewhere else.

Now, we've found that small delays are reasonably well generated with
an "outb" to 0x80. So, indeed changing that to something else is going
to be tricky.

All that I can think of right now is:
- Find a register that can be written without side effects in
"standard" hardware like a keyboard controller, or interrupt
controller. Especially good are ones that already require us to keep
a shadow value. Write the shadow variable to the register.
(Tricky: not interrupt safe!)
- Find a scratch register (like the one in the 16450).

- Is port 0x81 possibly "quite often" free?

Roger.

--
** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2137555 **
*-- BitWizard writes Linux device drivers for any device you may have! --*
* There are old pilots, and there are bold pilots.
* There are also old, bald pilots.