diff options
author | Dave Airlie <airlied@redhat.com> | 2009-07-28 14:19:24 +1000 |
---|---|---|
committer | Dave Airlie <airlied@redhat.com> | 2009-07-28 14:19:24 +1000 |
commit | 0a168401c401727e49a12cae43a6a387b1f2928d (patch) | |
tree | 14009cae14ca6fe298933516c98e5d57344ddf8d | |
parent | b3751454cbe02ee952bab213e8c3684d429c41b3 (diff) |
pci: add support for pci is boot vga call.
This allows us to ask the kernel for the boot VGA device
instead of nasty guessing.
-rw-r--r-- | configure.ac | 1 | ||||
-rw-r--r-- | hw/xfree86/common/xf86pciBus.c | 6 | ||||
-rw-r--r-- | include/xorg-config.h.in | 3 |
3 files changed, 10 insertions, 0 deletions
diff --git a/configure.ac b/configure.ac index 7c0ed602d..b245cdcc4 100644 --- a/configure.ac +++ b/configure.ac @@ -1387,6 +1387,7 @@ if test "x$XORG" = xyes; then LIBS=$PCIACCESS_LIBS AC_CHECK_FUNCS([pci_system_init_dev_mem]) AC_CHECK_FUNCS([pci_device_enable]) + AC_CHECK_FUNCS([pci_device_is_boot_vga]) LIBS=$SAVE_LIBS CFLAGS=$SAVE_CFLAGS XORG_SYS_LIBS="$XORG_SYS_LIBS $PCIACCESS_LIBS $DLOPEN_LIBS $GLX_SYS_LIBS" diff --git a/hw/xfree86/common/xf86pciBus.c b/hw/xfree86/common/xf86pciBus.c index 9a9ae4091..27e238a4d 100644 --- a/hw/xfree86/common/xf86pciBus.c +++ b/hw/xfree86/common/xf86pciBus.c @@ -371,6 +371,12 @@ xf86PciProbe(void) xf86PciVideoInfo[num - 1] = info; pci_device_probe(info); +#ifdef HAVE_PCI_DEVICE_IS_BOOT_VGA + if (pci_device_is_boot_vga(info)) { + primaryBus.type = BUS_PCI; + primaryBus.id.pci = info; + } +#endif info->user_data = 0; } } diff --git a/include/xorg-config.h.in b/include/xorg-config.h.in index ebeb44a37..ffb35f862 100644 --- a/include/xorg-config.h.in +++ b/include/xorg-config.h.in @@ -118,6 +118,9 @@ /* Have pci_system_init_dev_mem() */ #undef HAVE_PCI_SYSTEM_INIT_DEV_MEM +/* Define to 1 if you have the `pci_device_is_boot_vga' function. */ +#undef HAVE_PCI_DEVICE_IS_BOOT_VGA + /* Have pci_enable_device */ #undef HAVE_PCI_DEVICE_ENABLE |