summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Airlie <airlied@redhat.com>2012-09-10 14:48:37 +1000
committerDave Airlie <airlied@redhat.com>2012-11-02 10:17:06 +1000
commitc7c07558919102f06aeb3fad5f856f04e6757a76 (patch)
treeb49f1ccd22ad2dedbe73279cb44526f7a7ca6b98
parent39ebf87be749c59a06cb1763e11f14c722f77fbd (diff)
xf86/platform: scan pci after probing devices
This solves a race if we are trying to dynamically power off secondary GPUs. Its not the greatest fix ever but it probably as good as we can do for now. The GPU probing causes the devices to be powered up, then when we scan the PCI bus we get the correct information from the kernel, rather than a bunch of 0xff due to the device being powered off. drop gratuitous '&'. Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Dave Airlie <airlied@redhat.com> (cherry picked from commit 10672a5abe7d4e924844d7e41c86c24d6367a52b)
-rw-r--r--hw/xfree86/common/xf86platformBus.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/hw/xfree86/common/xf86platformBus.c b/hw/xfree86/common/xf86platformBus.c
index 24b947326..6a8fb907a 100644
--- a/hw/xfree86/common/xf86platformBus.c
+++ b/hw/xfree86/common/xf86platformBus.c
@@ -213,11 +213,12 @@ xf86platformProbe(void)
int i;
Bool pci = TRUE;
+ config_odev_probe(xf86PlatformDeviceProbe);
+
if (!xf86scanpci()) {
pci = FALSE;
}
- config_odev_probe(&xf86PlatformDeviceProbe);
for (i = 0; i < xf86_num_platform_devices; i++) {
char *busid = xf86_get_platform_attrib(i, ODEV_ATTRIB_BUSID);