[PATCH] DDX/PCI: Check harder for primary PCI device
Mark Kettenis
mark.kettenis at xs4all.nl
Thu Aug 15 07:19:17 PDT 2013
> Date: Wed, 14 Aug 2013 20:15:43 +0200
> From: Egbert Eich <eich at freedesktop.org>
>
> On Wed, Aug 14, 2013 at 07:50:50PM +0200, Mark Kettenis wrote:
> > > From: Egbert Eich <eich at freedesktop.org>
> > > Date: Wed, 14 Aug 2013 18:17:02 +0200
> > >
> > > Primary PCI devices are identified by checking for an 'PCIINFOCLASSES'
> > > device which is VGA and has access to the memory bars enabled.
> > > If there should be more than one device for which this is true
> > > redo the check and also check if IO resoures are also enabled,
> > > if this still doesn't turn up a unique result also check for
> > > the presence of a BIOS rom.
> >
> > Assuming this is a patch carried by SuSE, I'm a little bit surprised
> > this is needed. These days the primary VGA device should be detected
> > by libpciaccess through the pci_device_is_boot_vga() call, and I
> > believe the detection code in xf86pciBus.c should only be hit if that
> > method isn't implemented in libpciaccess. But for Linux
> > pci_device_is_boot_vga() is implemented.
> >
>
> Like the two patches for ACPI support I've sent today, it is not
> needed for the Xserver we ship today. However for an enterprise
> product with long term support this patch was needed and still is
> to fix a real problem that has been observed out in the field.
>
> Since the code that's being fixed still exists I believe there
> is still some value in integrating this - unless we decide to
> drop this code entirely. (Same is true for the ACPI support fixes).
I think dropping this non-libpciaccess fallback codepath should be the
goal. Currently of all the systems supported by libpciaccess, only
FreeBSD and OpenBSD don't implement the "oot_vga" callback function.
And I've got the OpenBSD code written, which I'll send back upstream
once our KMS support stabilizes a bit.
So I fear you're just adding dead code here. My suggestion would be
to simply drop this diff. But I won't object if others chime in and
think this diff still has value.
More information about the xorg-devel
mailing list