xserver-xorg-video-intel: Changes to 'ubuntu-precise'
debian/changelog | 14 -
debian/patches/101_copy-fb.patch | 263 +++++++++-----------
debian/patches/104_uxa_fix_gtt_mapping_limits.patch | 4
debian/patches/107-uxa-fix-pageflip-race.patch | 126 +++++++++
debian/patches/series | 1
5 files changed, 263 insertions(+), 145 deletions(-)
New commits:
commit 56a451cf57a479279e431e5ad1ff73bae231acba
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date: Sat Oct 6 07:32:29 2012 +0300
close a bug with patch 106
diff --git a/debian/changelog b/debian/changelog
index d17e9e8..20fa358 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,7 @@ xserver-xorg-video-intel (2:2.17.0-1ubuntu4.2) precise-proposed; urgency=low
* Add 106-uxa-only-consider-attached-outputs-valid.patch, two upstream
commits merged together that fix GPU hangs on resume, due to outputs
getting marked valid before the kernel reports them attached.
+ (LP: #992391)
* Replace 101_copy-fb.patch with the patch that went upstream, backported
to build against the older xserver. Needed for other backports.
- refreshed patch 104 to apply.
commit 697e87fda6f44a0e0565501d32e300db4a3b2c62
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date: Fri Oct 5 22:40:59 2012 +0300
release to precise-proposed
diff --git a/debian/changelog b/debian/changelog
index 77d2f2e..d17e9e8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-intel (2:2.17.0-1ubuntu4.1.1) precise; urgency=low
+xserver-xorg-video-intel (2:2.17.0-1ubuntu4.2) precise-proposed; urgency=low
* Add 106-uxa-only-consider-attached-outputs-valid.patch, two upstream
commits merged together that fix GPU hangs on resume, due to outputs
@@ -11,7 +11,7 @@ xserver-xorg-video-intel (2:2.17.0-1ubuntu4.1.1) precise; urgency=low
- consists of five upstream commits merged as one and backported to
build against the xserver in precise
- -- Timo Aaltonen <tjaalton@ubuntu.com> Fri, 24 Aug 2012 13:07:41 +0300
+ -- Timo Aaltonen <tjaalton@ubuntu.com> Fri, 05 Oct 2012 22:40:38 +0300
xserver-xorg-video-intel (2:2.17.0-1ubuntu4.1) precise-proposed; urgency=low
commit 9c089b408bf29faa0469160553a1ff4ee4b55841
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date: Fri Oct 5 22:40:27 2012 +0300
Add 107-uxa-fix-pageflip-race.patch
* Add 107-uxa-fix-pageflip-race.patch, fixes a race with pageflip and
dpms, resulting in for instance compiz hanging. (LP: #966744)
- consists of five upstream commits merged as one and backported to
build against the xserver in precise
diff --git a/debian/changelog b/debian/changelog
index b31067a..77d2f2e 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,10 @@ xserver-xorg-video-intel (2:2.17.0-1ubuntu4.1.1) precise; urgency=low
* Replace 101_copy-fb.patch with the patch that went upstream, backported
to build against the older xserver. Needed for other backports.
- refreshed patch 104 to apply.
+ * Add 107-uxa-fix-pageflip-race.patch, fixes a race with pageflip and
+ dpms, resulting in for instance compiz hanging. (LP: #966744)
+ - consists of five upstream commits merged as one and backported to
+ build against the xserver in precise
-- Timo Aaltonen <tjaalton@ubuntu.com> Fri, 24 Aug 2012 13:07:41 +0300
diff --git a/debian/patches/107-uxa-fix-pageflip-race.patch b/debian/patches/107-uxa-fix-pageflip-race.patch
new file mode 100644
index 0000000..c61395d
--- /dev/null
+++ b/debian/patches/107-uxa-fix-pageflip-race.patch
@@ -0,0 +1,126 @@
+commit edc5b7f741a4bb8e9a58b5eb2201fa9304f94ef7
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Thu Sep 27 13:27:20 2012 +0100
+
+commit 5a45cbacb777e478d8fbda9223b0fb5c705d7249
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Thu Sep 27 13:31:27 2012 +0100
+
+commit feef53005b57d6b4489a15f8d0db8245dcb0cfaa
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Thu Sep 27 13:36:55 2012 +0100
+
+commit cb0b72c4fbb7b1bc941522d8679fef856f2f8936
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Thu Sep 27 14:53:46 2012 +0100
+
+commit 88cfd23379950d1fe4e682519c48ef6e3091c2f3
+Author: Chris Wilson <chris@chris-wilson.co.uk>
+Date: Thu Sep 27 16:16:39 2012 +0100
+
+diff --git a/src/intel_display.c b/src/intel_display.c
+index 4ab7dd3..fae7066 100644
+--- a/src/intel_display.c
++++ b/src/intel_display.c
+@@ -1449,15 +1449,15 @@ intel_do_pageflip(intel_screen_private *intel,
+ struct intel_mode *mode = crtc->mode;
+ unsigned int pitch = scrn->displayWidth * intel->cpp;
+ struct intel_pageflip *flip;
+- int i, old_fb_id;
++ uint32_t new_fb_id;
++ int i;
+
+ /*
+ * Create a new handle for the back buffer
+ */
+- old_fb_id = mode->fb_id;
+ if (drmModeAddFB(mode->fd, scrn->virtualX, scrn->virtualY,
+ scrn->depth, scrn->bitsPerPixel, pitch,
+- new_front->handle, &mode->fb_id))
++ new_front->handle, &new_fb_id))
+ goto error_out;
+
+ intel_batch_submit(scrn);
+@@ -1476,7 +1476,7 @@ intel_do_pageflip(intel_screen_private *intel,
+ mode->fe_tv_usec = 0;
+
+ for (i = 0; i < config->num_crtc; i++) {
+- if (!config->crtc[i]->enabled)
++ if (!intel_crtc_on(config->crtc[i]))
+ continue;
+
+ mode->flip_info = flip_info;
+@@ -1499,7 +1499,7 @@ intel_do_pageflip(intel_screen_private *intel,
+
+ if (drmModePageFlip(mode->fd,
+ crtc_id(crtc),
+- mode->fb_id,
++ new_fb_id,
+ DRM_MODE_PAGE_FLIP_EVENT, flip)) {
+ xf86DrvMsg(scrn->scrnIndex, X_WARNING,
+ "flip queue failed: %s\n", strerror(errno));
+@@ -1508,12 +1508,16 @@ intel_do_pageflip(intel_screen_private *intel,
+ }
+ }
+
+- mode->old_fb_id = old_fb_id;
++ mode->old_fb_id = mode->fb_id;
++ mode->fb_id = new_fb_id;
+ return TRUE;
+
+ error_undo:
+- drmModeRmFB(mode->fd, mode->fb_id);
+- mode->fb_id = old_fb_id;
++ drmModeRmFB(mode->fd, new_fb_id);
++ for (i = 0; i < config->num_crtc; i++) {
++ if (config->crtc[i]->enabled)
++ intel_crtc_apply(config->crtc[i]);
++ }
+
+ error_out:
+ xf86DrvMsg(scrn->scrnIndex, X_WARNING, "Page flip failed: %s\n",
+diff --git a/src/intel_dri.c b/src/intel_dri.c
+index 135ba4e..c4dbd72 100644
+--- a/src/intel_dri.c
++++ b/src/intel_dri.c
+@@ -473,7 +473,7 @@ I830DRI2CopyRegion(DrawablePtr drawable, RegionPtr pRegion,
+ BoxPtr box;
+ BoxRec crtcbox;
+ int y1, y2;
+- int pipe = -1, event, load_scan_lines_pipe;
++ int event, load_scan_lines_pipe;
+ xf86CrtcPtr crtc;
+ Bool full_height = FALSE;
+
+@@ -485,7 +485,7 @@ I830DRI2CopyRegion(DrawablePtr drawable, RegionPtr pRegion,
+ * buffer
+ */
+ if (crtc != NULL && !crtc->rotatedData) {
+- pipe = intel_crtc_to_pipe(crtc);
++ int pipe = intel_crtc_to_pipe(crtc);
+
+ /*
+ * Make sure we don't wait for a scanline that will
+@@ -874,7 +874,8 @@ I830DRI2ScheduleFlip(struct intel_screen_private *intel,
+ static Bool
+ can_exchange(DrawablePtr drawable, DRI2BufferPtr front, DRI2BufferPtr back)
+ {
+- struct intel_screen_private *intel = intel_get_screen_private(xf86Screens[drawable->pScreen->myNum]);
++ ScrnInfoPtr pScrn = xf86Screens[drawable->pScreen->myNum];
++ struct intel_screen_private *intel = intel_get_screen_private(pScrn);
+ I830DRI2BufferPrivatePtr front_priv = front->driverPrivate;
+ I830DRI2BufferPrivatePtr back_priv = back->driverPrivate;
+ PixmapPtr front_pixmap = front_priv->pixmap;
+@@ -885,6 +886,12 @@ can_exchange(DrawablePtr drawable, DRI2BufferPtr front, DRI2BufferPtr back)
+ if (drawable == NULL)
+ return FALSE;
+
++ if (!pScrn->vtSema)
++ return FALSE;
++
++ if (I830DRI2DrawablePipe(drawable) < 0)
++ return FALSE;
++
+ if (!DRI2CanFlip(drawable))
+ return FALSE;
+
diff --git a/debian/patches/series b/debian/patches/series
index 45470d9..c086e8a 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -6,3 +6,4 @@
104_uxa_fix_gtt_mapping_limits.patch
105_reduce_ivb_gt1_max_thread_count.patch
106-uxa-only-consider-attached-outputs-valid.patch
+107-uxa-fix-pageflip-race.patch
commit 2d4a44aa7f1778de1de0c67eef2fcac46b608d75
Author: Timo Aaltonen <tjaalton@ubuntu.com>
Date: Fri Oct 5 22:09:47 2012 +0300
Replace 101_copy-fb.patch with the patch that went upstream
* Replace 101_copy-fb.patch with the patch that went upstream, backported
to build against the older xserver. Needed for other backports.
- refreshed patch 104 to apply.
diff --git a/debian/changelog b/debian/changelog
index cb3b106..b31067a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,8 +1,11 @@
-xserver-xorg-video-intel (2:2.17.0-1ubuntu4.1.1) UNRELEASED; urgency=low
+xserver-xorg-video-intel (2:2.17.0-1ubuntu4.1.1) precise; urgency=low
* Add 106-uxa-only-consider-attached-outputs-valid.patch, two upstream
commits merged together that fix GPU hangs on resume, due to outputs
getting marked valid before the kernel reports them attached.
+ * Replace 101_copy-fb.patch with the patch that went upstream, backported
+ to build against the older xserver. Needed for other backports.
+ - refreshed patch 104 to apply.
-- Timo Aaltonen <tjaalton@ubuntu.com> Fri, 24 Aug 2012 13:07:41 +0300
diff --git a/debian/patches/101_copy-fb.patch b/debian/patches/101_copy-fb.patch
index a84dc77..7290df9 100644
--- a/debian/patches/101_copy-fb.patch
+++ b/debian/patches/101_copy-fb.patch
@@ -1,16 +1,27 @@
-Index: xserver-xorg-video-intel/src/intel.h
-===================================================================
---- xserver-xorg-video-intel.orig/src/intel.h 2011-12-20 15:47:35.802985779 +1100
-+++ xserver-xorg-video-intel/src/intel.h 2011-12-20 15:47:38.618985789 +1100
-@@ -432,6 +432,7 @@
- OptionInfoPtr Options;
-
- /* Driver phase/state information */
-+ Bool starting;
- Bool suspended;
-
- enum last_3d last_3d;
-@@ -461,6 +462,7 @@
+commit 3b9b64c7c9b5b0bfaafb97c9a9fe5849bbb412da
+Author: Dave Airlie <airlied@gmail.com>
+Date: Tue Jun 12 10:26:34 2012 +0100
+
+ uxa: do copy fb at startup.
+
+ Copy the current framebuffer for smooth wayland->gdm handoff.
+
+ This has been hanging around in Fedora for too long now, and we've
+ dropped the feature a few times, and yes I know the Simpsons did it^W^W^W
+ SNA does it.
+
+ I've updated the code to have some of the better fixes from nouveau.
+
+ I've no idea who wrote this code either, krh or ajax. [ickle: The
+ earliest version I've found had krh's fingerprints on it, though it may
+ still have been a joint effort.]
+
+ Signed-off-by: Dave Airlie <airlied@redhat.com>
+ [ickle: improve error handling, only copy the fb during initial takeover]
+
+--- a/src/intel.h
++++ b/src/intel.h
+@@ -461,6 +461,7 @@
extern int intel_get_pipe_from_crtc_id(drm_intel_bufmgr *bufmgr, xf86CrtcPtr crtc);
extern int intel_crtc_id(xf86CrtcPtr crtc);
extern int intel_output_dpms_status(xf86OutputPtr output);
@@ -18,90 +29,80 @@ Index: xserver-xorg-video-intel/src/intel.h
enum DRI2FrameEventType {
DRI2_SWAP,
-Index: xserver-xorg-video-intel/src/intel_display.c
-===================================================================
---- xserver-xorg-video-intel.orig/src/intel_display.c 2011-12-20 15:47:35.778985780 +1100
-+++ xserver-xorg-video-intel/src/intel_display.c 2011-12-20 15:54:45.422987131 +1100
-@@ -36,6 +36,8 @@
+--- a/src/intel_display.c
++++ b/src/intel_display.c
+@@ -35,6 +35,7 @@
+ #include <unistd.h>
#include <errno.h>
#include <poll.h>
-
+#include <sys/ioctl.h>
-+
+
#include "xorgVersion.h"
- #include "intel.h"
-@@ -45,6 +47,8 @@
+@@ -44,6 +45,8 @@
+ #include "X11/Xatom.h"
#include "X11/extensions/dpmsconst.h"
#include "xf86DDC.h"
-
++#include "fb.h"
+#include "uxa.h"
-+
+
struct intel_mode {
int fd;
- uint32_t fb_id;
-@@ -939,6 +943,13 @@
- drmModeConnectorPtr koutput = intel_output->mode_output;
- struct intel_mode *mode = intel_output->mode;
- int i;
-+ intel_screen_private *intel = intel_get_screen_private(output->scrn);
-+
-+ /* xf86Crtc.c calls dpms off in set desired modes, so ignore
-+ * the request if we're starting up. */
-+
-+ if (intel->starting)
-+ return;
-
- for (i = 0; i < koutput->count_props; i++) {
- drmModePropertyPtr props;
-@@ -1632,6 +1643,11 @@
- }
-
- intel->modes = mode;
-+
-+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 9
-+ scrn->canDoBGNoneRoot = TRUE;
-+#endif
-+
- return TRUE;
- }
-
-@@ -1701,3 +1717,100 @@
+@@ -1701,3 +1704,129 @@
struct intel_crtc *intel_crtc = crtc->driver_private;
return intel_crtc->pipe;
}
+
+static PixmapPtr
-+intel_create_pixmap_for_fbcon(ScrnInfoPtr scrn)
++intel_create_pixmap_for_bo(ScreenPtr pScreen, dri_bo *bo,
++ int width, int height,
++ int depth, int bpp,
++ int pitch)
++{
++ PixmapPtr pixmap;
++
++ pixmap = pScreen->CreatePixmap(pScreen, 0, 0, depth, 0);
++ if (pixmap == NullPixmap)
++ return pixmap;
++
++ if (!pScreen->ModifyPixmapHeader(pixmap,
++ width, height,
++ depth, bpp,
++ pitch, NULL)) {
++ pScreen->DestroyPixmap(pixmap);
++ return NullPixmap;
++ }
++
++ intel_set_pixmap_bo(pixmap, bo);
++ return pixmap;
++}
++
++static PixmapPtr
++intel_create_pixmap_for_fbcon(ScrnInfoPtr scrn, int fbcon_id)
+{
-+ xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
-+ struct intel_crtc *intel_crtc = xf86_config->crtc[0]->driver_private;
+ ScreenPtr pScreen = screenInfo.screens[scrn->scrnIndex];
-+ struct intel_mode *mode = intel_crtc->mode;
+ intel_screen_private *intel = intel_get_screen_private(scrn);
-+ drmModeFBPtr fbcon = NULL;
++ struct intel_mode *mode = intel->modes;
++ int fd = mode->fd;
++ drmModeFBPtr fbcon;
+ struct drm_gem_flink flink;
+ drm_intel_bo *bo;
-+ PixmapPtr pixmap = NULL;
-+ int i;
++ PixmapPtr pixmap = NullPixmap;
+
-+ for (i = 0; i < mode->mode_res->count_crtcs; i++) {
-+ intel_crtc = xf86_config->crtc[i]->driver_private;
-+ if (intel_crtc->mode_crtc->buffer_id == 0)
-+ continue;
-+ fbcon = drmModeGetFB(mode->fd,
-+ intel_crtc->mode_crtc->buffer_id);
-+ if (fbcon != NULL)
-+ break;
-+ }
-+ if (i == mode->mode_res->count_crtcs)
++ fbcon = drmModeGetFB(fd, fbcon_id);
++ if (fbcon == NULL)
+ return NULL;
+
++ if (fbcon->depth != scrn->depth ||
++ fbcon->width != scrn->virtualX ||
++ fbcon->height != scrn->virtualY)
++ goto out_free_fb;
++
+ flink.handle = fbcon->handle;
-+ if (ioctl(mode->fd, DRM_IOCTL_GEM_FLINK, &flink) < 0) {
++ if (ioctl(fd, DRM_IOCTL_GEM_FLINK, &flink) < 0) {
+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
+ "Couldn't flink fbcon handle\n");
-+ return NULL;
++ goto out_free_fb;
+ }
+
+ bo = drm_intel_bo_gem_create_from_name(intel->bufmgr,
@@ -109,23 +110,18 @@ Index: xserver-xorg-video-intel/src/intel_display.c
+ if (bo == NULL) {
+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
+ "Couldn't allocate bo for fbcon handle\n");
-+ return NULL;
++ goto out_free_fb;
+ }
-+ if (!CreateScratchPixmapsForScreen(pScreen->myNum))
-+ return NULL;
+
-+ pixmap = GetScratchPixmapHeader(pScreen,
-+ fbcon->width, fbcon->height,
-+ fbcon->depth, fbcon->bpp,
-+ fbcon->pitch, NULL);
-+ if (pixmap == NULL) {
++ pixmap = intel_create_pixmap_for_bo(pScreen, bo,
++ fbcon->width, fbcon->height,
++ fbcon->depth, fbcon->bpp,
++ fbcon->pitch);
++ if (pixmap == NullPixmap)
+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
+ "Couldn't allocate pixmap fbcon contents\n");
-+ return NULL;
-+ }
-+
-+ intel_set_pixmap_bo(pixmap, bo);
+ drm_intel_bo_unreference(bo);
++out_free_fb:
+ drmModeFreeFB(fbcon);
+
+ return pixmap;
@@ -133,78 +129,67 @@ Index: xserver-xorg-video-intel/src/intel_display.c
+
+void intel_copy_fb(ScrnInfoPtr scrn)
+{
++ xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(scrn);
+ ScreenPtr pScreen = screenInfo.screens[scrn->scrnIndex];
+ intel_screen_private *intel = intel_get_screen_private(scrn);
+ PixmapPtr src, dst;
+ unsigned int pitch = scrn->displayWidth * intel->cpp;
++ struct intel_crtc *intel_crtc;
++ int i, fbcon_id;
+
-+ src = intel_create_pixmap_for_fbcon(scrn);
-+ if (src == NULL) {
-+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
-+ "Couldn't create pixmap for fbcon\n");
++ if (intel->force_fallback)
+ return;
-+ }
+
-+ /* We dont have a screen Pixmap yet */
-+ dst = GetScratchPixmapHeader(pScreen,
-+ scrn->virtualX, scrn->virtualY,
-+ scrn->depth, scrn->bitsPerPixel,
-+ pitch,
-+ NULL);
-+ intel_set_pixmap_bo(dst, intel->front_buffer);
++ fbcon_id = 0;
++ for (i = 0; i < xf86_config->num_crtc; i++) {
++ intel_crtc = xf86_config->crtc[i]->driver_private;
++ if (intel_crtc->mode_crtc->buffer_id)
++ fbcon_id = intel_crtc->mode_crtc->buffer_id;
++ }
++ if (!fbcon_id)
++ return;
+
-+ intel->uxa_driver->prepare_copy(src, dst, -1, -1, GXcopy, FB_ALLONES);
++ src = intel_create_pixmap_for_fbcon(scrn, fbcon_id);
++ if (src == NULL)
++ return;
+
-+ intel->uxa_driver->copy(dst, 0, 0, 0, 0,
++ /* We dont have a screen Pixmap yet */
++ dst = intel_create_pixmap_for_bo(pScreen, intel->front_buffer,
++ scrn->virtualX, scrn->virtualY,
++ scrn->depth, scrn->bitsPerPixel,
++ pitch);
++ if (dst == NullPixmap)
++ goto cleanup_src;
++
++ if (!intel->uxa_driver->prepare_copy(src, dst,
++ -1, -1,
++ GXcopy, FB_ALLONES))
++ goto cleanup_dst;
++
++ intel->uxa_driver->copy(dst,
++ 0, 0,
++ 0, 0,
+ scrn->virtualX, scrn->virtualY);
-+
+ intel->uxa_driver->done_copy(dst);
++ pScreen->canDoBGNoneRoot = TRUE;
+
-+ intel_batch_submit(scrn);
-+
-+ (*pScreen->DestroyPixmap)(src);
++cleanup_dst:
+ (*pScreen->DestroyPixmap)(dst);
-+ FreeScratchPixmapsForScreen(pScreen->myNum);
++cleanup_src:
++ (*pScreen->DestroyPixmap)(src);
+}
-+
-Index: xserver-xorg-video-intel/src/intel_driver.c
-===================================================================
---- xserver-xorg-video-intel.orig/src/intel_driver.c 2011-12-20 15:47:35.762985780 +1100
-+++ xserver-xorg-video-intel/src/intel_driver.c 2011-12-20 15:47:38.618985789 +1100
-@@ -950,6 +950,10 @@
- intel->directRenderingType = DRI_DRI2;
- #endif
-
-+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 9
-+ screen->canDoBGNoneRoot = TRUE;
-+#endif
-+
- if (!intel_init_initial_framebuffer(scrn))
+--- a/src/intel_driver.c
++++ b/src/intel_driver.c
+@@ -238,7 +238,11 @@
+ if (!(*screen->CreateScreenResources) (screen))
return FALSE;
-@@ -958,6 +962,8 @@
- if (INTEL_INFO(intel)->gen >= 40)
- gen4_render_state_init(scrn);
-
-+ intel->starting = FALSE;
+- return intel_uxa_create_screen_resources(screen);
++ if (!intel_uxa_create_screen_resources(screen))
++ return FALSE;
+
- miClearVisualTypes();
- if (!miSetVisualTypes(scrn->depth,
- miGetDefaultVisualMask(scrn->depth),
-@@ -1093,6 +1099,7 @@
-
- intel_mode_init(intel);
-
-+ intel->starting = FALSE;
- intel->suspended = FALSE;
-
- #if HAVE_UDEV
-@@ -1159,6 +1166,8 @@
-
- intel_set_gem_max_sizes(scrn);
-
+ intel_copy_fb(scrn);
-+
- if (!xf86SetDesiredModes(scrn))
- return FALSE;
++ return TRUE;
+ }
+ static void PreInitCleanup(ScrnInfoPtr scrn)
diff --git a/debian/patches/104_uxa_fix_gtt_mapping_limits.patch b/debian/patches/104_uxa_fix_gtt_mapping_limits.patch
index 97ebcc0..ba701a2 100644
--- a/debian/patches/104_uxa_fix_gtt_mapping_limits.patch
+++ b/debian/patches/104_uxa_fix_gtt_mapping_limits.patch
@@ -30,14 +30,12 @@ diff -Nurp patched/src/intel_display.c build/src/intel_display.c
diff -Nurp patched/src/intel_driver.c build/src/intel_driver.c
--- patched/src/intel_driver.c 2012-02-15 17:31:03.643780719 -0800
+++ build/src/intel_driver.c 2012-02-15 17:28:59.439522179 -0800
-@@ -1164,8 +1164,6 @@ static Bool I830EnterVT(int scrnIndex, i
+@@ -1164,6 +1164,4 @@ static Bool I830EnterVT(int scrnIndex, i
strerror(errno));
}
- intel_set_gem_max_sizes(scrn);
-
- intel_copy_fb(scrn);
-
if (!xf86SetDesiredModes(scrn))
diff -Nurp patched/src/intel.h build/src/intel.h
--- patched/src/intel.h 2012-02-15 17:31:03.643780719 -0800
Reply to: