Blame SOURCES/0001-Fix-Xorg-configure-not-working-anymore.patch

82b592
From 42351690f5a4999bfe7370eb3c496f74f635c709 Mon Sep 17 00:00:00 2001
82b592
From: Hans de Goede <hdegoede@redhat.com>
82b592
Date: Mon, 8 Aug 2016 14:38:54 +0200
82b592
Subject: [PATCH xserver] Fix Xorg -configure not working anymore
82b592
82b592
Xorg -configure relies on the bus implementation, e.g.
82b592
xf86pciBus.c to call xf86AddBusDeviceToConfigure(). The new
82b592
xf86platformBus code does not have support for this.
82b592
82b592
Almost all drivers support both the xf86platformBus and xf86pciBus
82b592
nowadays, and the generic xf86Bus xf86CallDriverProbe() function
82b592
prefers the new xf86platformBus probe method when available.
82b592
82b592
Since the platformBus paths do not call xf86AddBusDeviceToConfigure()
82b592
this results in Xorg -configure failing with the following error:
82b592
"No devices to configure.  Configuration failed.".
82b592
82b592
Adding support for the xf86Configure code to xf86platformBus.c
82b592
is non trivial and since we advise users to normally run without
82b592
any Xorg.conf at all not worth the trouble.
82b592
82b592
However some users still want to use Xorg -configure to generate a
82b592
template config file, this commit implements a minimal fix to make
82b592
things work again for PCI devices by skipping the platform
82b592
probe method when xf86DoConfigure is set.
82b592
82b592
This has been tested on a system with integrated intel graphics,
82b592
with both the intel and modesetting drivers and restores Xorg -configure
82b592
functionality on both cases.
82b592
82b592
Cc: Adam Jackson <ajax@redhat.com>
82b592
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
82b592
---
82b592
 hw/xfree86/common/xf86Bus.c | 3 ++-
82b592
 1 file changed, 2 insertions(+), 1 deletion(-)
82b592
82b592
diff --git a/hw/xfree86/common/xf86Bus.c b/hw/xfree86/common/xf86Bus.c
82b592
index bd36fc5..5b93940 100644
82b592
--- a/hw/xfree86/common/xf86Bus.c
82b592
+++ b/hw/xfree86/common/xf86Bus.c
82b592
@@ -78,7 +78,8 @@ xf86CallDriverProbe(DriverPtr drv, Bool detect_only)
82b592
     Bool foundScreen = FALSE;
82b592
 
82b592
 #ifdef XSERVER_PLATFORM_BUS
82b592
-    if (drv->platformProbe != NULL) {
82b592
+    /* xf86platformBus.c does not support Xorg -configure */
82b592
+    if (!xf86DoConfigure && drv->platformProbe != NULL) {
82b592
         foundScreen = xf86platformProbeDev(drv);
82b592
     }
82b592
     if (ServerIsNotSeat0() && foundScreen)
82b592
-- 
82b592
2.7.4
82b592