Proper way to enable port access tracing with current xserver
Tiago Vignatti
vignatti at c3sl.ufpr.br
Tue Jan 20 20:09:01 PST 2009
Hi,
Alex Villacís Lasso escreveu:
> Another question I have is this: as far as I understand, PCI video cards
> have to run the POST (or do an equivalent operation) in order to execute
> the chipset-specific hocus-pocus that enables legacy vga port access
> (0x3c0 through 0x3df). So only one chipset can be mapped into that I/O
> address range at a time (right?).
right. Note that some modern video cards can entirely scape from this
legacy VGA crappy.
> When initializing a secondary card via
> POST, the real-mode code of the secondary card will also attempt to map
> its own registers into that range (I would assume). So what steps are
> taken in the xserver to move the primary card out of the way (if at all)
> so that the second card initializes properly? What happens if the
> drivers for both chipsets require some access to the legacy I/O ports in
> order to perform normal operations?
this is currently addressed by the RAC module inside the Xorg server.
But this module is selfish and only provides informations to its X
server. If you have two or more applications (e.g. X servers) trying to
use the VGA registers then the machine will probably hang (maybe not
hang, but you will see a lot of crazy things on screen... like the
lights of a rave party, or a screen that remembers an Atari game...
well, it will depends in the kind of things you'll be smoking).
Cheers,
--
Tiago Vignatti
C3SL - Centro de Computação Científica e Software Livre
www.c3sl.ufpr.br
More information about the xorg
mailing list