summaryrefslogtreecommitdiff
path: root/extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch
diff options
context:
space:
mode:
Diffstat (limited to 'extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch')
-rw-r--r--extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch50
1 files changed, 50 insertions, 0 deletions
diff --git a/extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch b/extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch
new file mode 100644
index 000000000..89f43459d
--- /dev/null
+++ b/extra/xf86-video-intel/0002-uxa-Defer-the-call-to-EnterVT-till-after-outputs-are.patch
@@ -0,0 +1,50 @@
+From fd25a4586b0667b1591d85b23daaa99464e9b0d8 Mon Sep 17 00:00:00 2001
+From: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Mon, 19 Mar 2012 15:51:43 +0000
+Subject: [PATCH 2/5] uxa: Defer the call to EnterVT till after outputs are
+ initialised
+
+We need to do this apparently or else we never perform the VT switch.
+However, we can not do it too early, especially not before we have
+finished intialising the outputs.
+
+Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=47395
+Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
+---
+ src/intel_driver.c | 13 +++++--------
+ 1 file changed, 5 insertions(+), 8 deletions(-)
+
+diff --git a/src/intel_driver.c b/src/intel_driver.c
+index e2e43fa..ff29754 100644
+--- a/src/intel_driver.c
++++ b/src/intel_driver.c
+@@ -1013,13 +1013,6 @@ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
+ "Hardware cursor initialization failed\n");
+ }
+
+- /* Must force it before EnterVT, so we are in control of VT and
+- * later memory should be bound when allocating, e.g rotate_mem */
+- scrn->vtSema = TRUE;
+-
+- if (!I830EnterVT(scrnIndex, 0))
+- return FALSE;
+-
+ intel->BlockHandler = screen->BlockHandler;
+ screen->BlockHandler = I830BlockHandler;
+
+@@ -1092,7 +1085,11 @@ I830ScreenInit(int scrnIndex, ScreenPtr screen, int argc, char **argv)
+ I830UeventInit(scrn);
+ #endif
+
+- return TRUE;
++ /* Must force it before EnterVT, so we are in control of VT and
++ * later memory should be bound when allocating, e.g rotate_mem */
++ scrn->vtSema = TRUE;
++
++ return I830EnterVT(scrnIndex, 0);
+ }
+
+ static void i830AdjustFrame(int scrnIndex, int x, int y, int flags)
+--
+1.7.10
+