xserver-xorg-video-intel: Changes to 'ubuntu'
debian/changelog | 1
debian/patches/101_copy-fb.patch | 210 ---------------------------------------
debian/patches/series | 3
3 files changed, 1 insertion(+), 213 deletions(-)
New commits:
commit 0494421d8c67df023416e95988eea0aa906cb736
Author: Maarten Lankhorst <maarten.lankhorst@canonical.com>
Date: Wed Jul 18 11:04:21 2012 +0200
drop upstreamed patch
diff --git a/debian/changelog b/debian/changelog
index 64f6f71..5d4a5bb 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ xserver-xorg-video-intel (2:2.20-1) UNRELEASED; urgency=low
* New upstream release:
- First official release with sna
+ * Drop upstreamed 101_copy-fb.patch
-- Maarten Lankhorst <maarten.lankhorst@canonical.com> Mon, 16 Jul 2012 16:21:28 +0200
diff --git a/debian/patches/101_copy-fb.patch b/debian/patches/101_copy-fb.patch
deleted file mode 100644
index 8f2d597..0000000
--- a/debian/patches/101_copy-fb.patch
+++ /dev/null
@@ -1,210 +0,0 @@
-Index: xserver-xorg-video-intel/src/intel.h
-===================================================================
---- xserver-xorg-video-intel.orig/src/intel.h 2012-06-01 09:35:35.711057501 +1000
-+++ xserver-xorg-video-intel/src/intel.h 2012-06-01 09:38:29.029664251 +1000
-@@ -340,6 +340,7 @@
- OptionInfoPtr Options;
-
- /* Driver phase/state information */
-+ Bool starting;
- Bool suspended;
-
- enum last_3d last_3d;
-@@ -369,6 +370,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);
-+extern void intel_copy_fb(ScrnInfoPtr scrn);
-
- enum DRI2FrameEventType {
- DRI2_SWAP,
-Index: xserver-xorg-video-intel/src/intel_display.c
-===================================================================
---- xserver-xorg-video-intel.orig/src/intel_display.c 2012-06-01 09:35:35.711057501 +1000
-+++ xserver-xorg-video-intel/src/intel_display.c 2012-06-01 09:38:29.029664251 +1000
-@@ -36,6 +36,8 @@
- #include <errno.h>
- #include <poll.h>
-
-+#include <sys/ioctl.h>
-+
- #include "xorgVersion.h"
-
- #include "intel.h"
-@@ -48,6 +50,8 @@
-
- #include "intel_glamor.h"
-
-+#include "uxa.h"
-+
- struct intel_mode {
- int fd;
- uint32_t fb_id;
-@@ -936,6 +940,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;
-@@ -1630,6 +1641,11 @@
- }
-
- intel->modes = mode;
-+
-+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 9
-+ scrn->canDoBGNoneRoot = TRUE;
-+#endif
-+
- return TRUE;
- }
-
-@@ -1699,3 +1715,100 @@
- struct intel_crtc *intel_crtc = crtc->driver_private;
- return intel_crtc->pipe;
- }
-+
-+static PixmapPtr
-+intel_create_pixmap_for_fbcon(ScrnInfoPtr scrn)
-+{
-+ 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 drm_gem_flink flink;
-+ drm_intel_bo *bo;
-+ PixmapPtr pixmap = NULL;
-+ int i;
-+
-+ 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)
-+ return NULL;
-+
-+ flink.handle = fbcon->handle;
-+ if (ioctl(mode->fd, DRM_IOCTL_GEM_FLINK, &flink) < 0) {
-+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
-+ "Couldn't flink fbcon handle\n");
-+ return NULL;
-+ }
-+
-+ bo = drm_intel_bo_gem_create_from_name(intel->bufmgr,
-+ "fbcon", flink.name);
-+ if (bo == NULL) {
-+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
-+ "Couldn't allocate bo for fbcon handle\n");
-+ return NULL;
-+ }
-+ if (!CreateScratchPixmapsForScreen(pScreen->myNum))
-+ return NULL;
-+
-+ pixmap = GetScratchPixmapHeader(pScreen,
-+ fbcon->width, fbcon->height,
-+ fbcon->depth, fbcon->bpp,
-+ fbcon->pitch, NULL);
-+ if (pixmap == NULL) {
-+ 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);
-+ drmModeFreeFB(fbcon);
-+
-+ return pixmap;
-+}
-+
-+void intel_copy_fb(ScrnInfoPtr 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;
-+
-+ src = intel_create_pixmap_for_fbcon(scrn);
-+ if (src == NULL) {
-+ xf86DrvMsg(scrn->scrnIndex, X_ERROR,
-+ "Couldn't create pixmap for fbcon\n");
-+ 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);
-+
-+ intel->uxa_driver->prepare_copy(src, dst, -1, -1, GXcopy, FB_ALLONES);
-+
-+ intel->uxa_driver->copy(dst, 0, 0, 0, 0,
-+ scrn->virtualX, scrn->virtualY);
-+
-+ intel->uxa_driver->done_copy(dst);
-+
-+ intel_batch_submit(scrn);
-+
-+ (*pScreen->DestroyPixmap)(src);
-+ (*pScreen->DestroyPixmap)(dst);
-+ FreeScratchPixmapsForScreen(pScreen->myNum);
-+}
-+
-Index: xserver-xorg-video-intel/src/intel_driver.c
-===================================================================
---- xserver-xorg-video-intel.orig/src/intel_driver.c 2012-06-01 09:35:35.711057501 +1000
-+++ xserver-xorg-video-intel/src/intel_driver.c 2012-06-01 09:38:29.029664251 +1000
-@@ -945,6 +945,10 @@
- intel->directRenderingType = DRI_DRI2;
- #endif
-
-+#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 9
-+ screen->canDoBGNoneRoot = TRUE;
-+#endif
-+
- if (!intel_init_initial_framebuffer(scrn))
- return FALSE;
-
-@@ -953,6 +957,8 @@
- if (INTEL_INFO(intel)->gen >= 40)
- gen4_render_state_init(scrn);
-
-+ intel->starting = FALSE;
-+
- miClearVisualTypes();
- if (!miSetVisualTypes(scrn->depth,
- miGetDefaultVisualMask(scrn->depth),
-@@ -1077,6 +1083,7 @@
-
- intel_mode_init(intel);
-
-+ intel->starting = FALSE;
- intel->suspended = FALSE;
-
- #if HAVE_UDEV
-@@ -1141,6 +1148,8 @@
- strerror(errno));
- }
-
-+ intel_copy_fb(scrn);
-+
- if (!xf86SetDesiredModes(scrn))
- return FALSE;
-
diff --git a/debian/patches/series b/debian/patches/series
index 590d1b2..3569ab4 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,4 +1 @@
0001-Fix-build-failure-when-passing-with-builderstring.patch
-
-# Ubuntu patches
-101_copy-fb.patch
Reply to: