aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/hw/xfree86
diff options
context:
space:
mode:
Diffstat (limited to 'xorg-server/hw/xfree86')
-rw-r--r--xorg-server/hw/xfree86/common/xf86Extensions.c2
-rw-r--r--xorg-server/hw/xfree86/common/xf86platformBus.c8
-rw-r--r--xorg-server/hw/xfree86/dixmods/glxmodule.c2
-rw-r--r--xorg-server/hw/xfree86/modes/xf86Crtc.c4
4 files changed, 14 insertions, 2 deletions
diff --git a/xorg-server/hw/xfree86/common/xf86Extensions.c b/xorg-server/hw/xfree86/common/xf86Extensions.c
index d5309d558..f9e791607 100644
--- a/xorg-server/hw/xfree86/common/xf86Extensions.c
+++ b/xorg-server/hw/xfree86/common/xf86Extensions.c
@@ -53,7 +53,7 @@
/*
* DDX-specific extensions.
*/
-static ExtensionModule extensionModules[] = {
+static const ExtensionModule extensionModules[] = {
#ifdef XF86VIDMODE
{
XFree86VidModeExtensionInit,
diff --git a/xorg-server/hw/xfree86/common/xf86platformBus.c b/xorg-server/hw/xfree86/common/xf86platformBus.c
index 0525e39bc..599d84ac2 100644
--- a/xorg-server/hw/xfree86/common/xf86platformBus.c
+++ b/xorg-server/hw/xfree86/common/xf86platformBus.c
@@ -377,6 +377,14 @@ xf86platformProbeDev(DriverPtr drvp)
continue;
}
+ /*
+ * If all of the above fails, which can happen if X was started without
+ * configuration or if BusID wasn't set for non-PCI devices, use the first
+ * device by default.
+ */
+ if (!foundScreen && xf86_num_platform_devices > 0 && numDevs > 0)
+ foundScreen = probeSingleDevice(&xf86_platform_devices[0], drvp, devList[0], 0);
+
/* if autoaddgpu devices is enabled then go find a few more and add them as GPU screens */
if (xf86Info.autoAddGPU && numDevs) {
for (j = 0; j < xf86_num_platform_devices; j++) {
diff --git a/xorg-server/hw/xfree86/dixmods/glxmodule.c b/xorg-server/hw/xfree86/dixmods/glxmodule.c
index c0c611401..e6bb73673 100644
--- a/xorg-server/hw/xfree86/dixmods/glxmodule.c
+++ b/xorg-server/hw/xfree86/dixmods/glxmodule.c
@@ -47,7 +47,7 @@ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
static MODULESETUPPROTO(glxSetup);
-static ExtensionModule GLXExt = {
+static const ExtensionModule GLXExt = {
GlxExtensionInit,
"GLX",
&noGlxExtension
diff --git a/xorg-server/hw/xfree86/modes/xf86Crtc.c b/xorg-server/hw/xfree86/modes/xf86Crtc.c
index 177f7ac11..13251cff4 100644
--- a/xorg-server/hw/xfree86/modes/xf86Crtc.c
+++ b/xorg-server/hw/xfree86/modes/xf86Crtc.c
@@ -1847,6 +1847,10 @@ SetCompatOutput(xf86CrtcConfigPtr config)
output = config->output[config->compat_output];
}
+ /* All outputs are disconnected, select one to fake */
+ if (!output && config->num_output)
+ output = config->output[0];
+
return output;
}