VGA arbitration: API proposal
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 :)
More information about the xorg