patch - word/byte PCI config support for ix86

Sergey Babkin <[email protected]>
Newsgroups gmane.comp.xfree86.devel,gmane.comp.freedesktop.xorg
Message-ID <[email protected]>
Hi,

I'm not sure if it's a good idea to cc: to both X.org and
XF86 mailing lists, but the subject is kind of useful
for both. 

I've attached the patch that adds word- and byte-sized
PCI configuration reads and writes for the ix86
platform. The particular reason was to fix the
support of sincgle-chip Matrox G200 with the VESA driver 
on UnixWare. This hardware is somewhat brain-damaged
and really expects word- and byte-sized bus cycles,
it does not work with the wraping in Long.

I've added this support only to the type 1 configuration
mode, since apparently type 2 hasn't been used in 
new devices for a few years now. The type 2 should
still work in the old-fashioned way, by wrapping
around through the Long read/write.

It uses the fact that the register 0xCF8 gets written in
a Long mode first to selec the bus address. During that
write the hardware type detection will be triggered,
and if the device uese type 1 configuration, then
the pointers to the byte/word access functions would
get populated, otherwise for type 2 they would be set to 0
as before.

Tha patch was done against the X.org 6.9.0 code.

-SB
pcifix.df.gz (application/octet-stream, 1.1 KB) - not displayed
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.