VGA arbitration: API proposal

Jesse Barnes jbarnes at engr.sgi.com
Sat Mar 5 10:23:38 PST 2005


On Friday, March 04, 2005 6:15 pm, Benjamin Herrenschmidt wrote:
> > Seems to make sense to me--you really do have to introduce the concept of
> > a VGA owner for cases where multiple VGA cards share the same bus or
> > legacy I/O/mem decode segment.  In that sense, it complements the
> > existing legacy_io/mem API presented by sysfs.
> >
> > Might be nice if the  vga_set_legacy_decoding routine also returned the
> > addresses of legacy I/O and memory space for that card.
>
> How so ? The legacy stuff may be at different places ?

Right, I meant it would be nice for it to return VGA info, like the VGA port 
base and VGA mem base, e.g. for use by vgacon.

> Sure, that's the preferred way. That's why I introduce that
> vga_set_legacy_decoding() function so that drivers that go to full
> non-VGA mode and can disable VGA decoding on the card can happily stop
> caring. Also, if nobody ever calls vga_get()/vga_put(), there is no
> problem neither, though It's not something you can rely on as far as the
> interrupt problem is concern since a VGA card can be hotplugged. It
> would be possible to deal with this special case scenario if it happens
> to be very common (that or simply the case of only one card) by
> introducing a callback mecanism telling drivers to forget about their
> interrupts and disable them once the "bad" device gets into the system,
> but that would significantly bloat the complexity of the whole scheme.

Yeah, that seems a bit *too* special case :)

Jesse



More information about the xorg mailing list