Subject: Re: KDENABIO vs i386_iopl() [was XF86 3.1.2e scanpci fails on 1.2-beta]
To: Jonathan Stone <jonathan@DSG.Stanford.EDU>
From: Frank van der Linden <frank@fwi.uva.nl>
List: port-i386
Date: 08/27/1996 11:17:09
Quoting Jonathan Stone,

> To answer my own question, I dug out the source.  It seems the XFree86
> scanpci uses KDENABIO, which seems to be present only if pcvt is
> configured; I wasn't using pcvt.  That would explain the coredump.

> I'd submit a patch to Xfree86 to use i386_iopl(), but I don't know how
> far back i386_iopl() goes.  Was it available in 1.1?  If not, is it
> better to support non-pcvt 1.2 configurations, or to continue using
> KDENABIO and KDDISABIO?   And, if the latter is preferable, can we
> move the definitions out of arch/i386/isa/pcvt,  to somewhere where
> they'll get installed in /usr/include?

You should do this using i386_iopl. In fact, the KD*ABIO was disabled
in PCVT because i386_iopl now exists, it was a leftover from what
pcvt calls 'USL VT handling', I believe you'll find it in most
i386 SysV versions.

i386_iopl has been in there since 1.1; 1.0 had a hack that gave you
I/O port access if you opened /dev/io (minor device 14 of the mm driver)
for writing. I believe it was also temporary linked to minor dev 0 (/dev/mem),
but never in an official release. So if you want to make it work on 1.0,
opening /dev/io for writing first should do it.

Cheers,

- Frank