Patchwork xf86-video-modesetting: backport fix for graphics corruption

login
register
mail settings
Submitter Jonathan Liu
Date May 31, 2013, 10:07 a.m.
Message ID <1369994854-22597-1-git-send-email-net147@gmail.com>
Download mbox | patch
Permalink /patch/50923/
State Accepted
Commit c252ed989dea10c558b7f1c8e995700a0ea8d257
Headers show

Comments

Ross Burton - May 31, 2013, 10:03 a.m.
On 31 May 2013 11:07, Jonathan Liu <net147@gmail.com> wrote:
> This fixes graphics corruption that can occur when using 32 bpp pixmaps
> with 24 bpp framebuffer.
>
> Signed-off-by: Jonathan Liu <net147@gmail.com>

Signed-off-by: Ross Burton <ross.burton@intel.com>
Jonathan Liu - May 31, 2013, 10:07 a.m.
This fixes graphics corruption that can occur when using 32 bpp pixmaps
with 24 bpp framebuffer.

Signed-off-by: Jonathan Liu <net147@gmail.com>
---
 ...ort-32-bpp-pixmaps-when-24-bpp-fb-is-used.patch | 31 ++++++++++++++++++++++
 .../xorg-driver/xf86-video-modesetting_0.7.0.bb    |  2 ++
 2 files changed, 33 insertions(+)
 create mode 100644 meta/recipes-graphics/xorg-driver/xf86-video-modesetting/support-32-bpp-pixmaps-when-24-bpp-fb-is-used.patch

Patch

diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-modesetting/support-32-bpp-pixmaps-when-24-bpp-fb-is-used.patch b/meta/recipes-graphics/xorg-driver/xf86-video-modesetting/support-32-bpp-pixmaps-when-24-bpp-fb-is-used.patch
new file mode 100644
index 0000000..c351757
--- /dev/null
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-modesetting/support-32-bpp-pixmaps-when-24-bpp-fb-is-used.patch
@@ -0,0 +1,31 @@ 
+Upstream-Status: Backport
+Signed-off-by: Jonathan Liu <net147@gmail.com>
+
+From cba29fd8c2f605ed66718aa3a6b5833deb5d4cf9 Mon Sep 17 00:00:00 2001
+From: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+Date: Wed, 3 Apr 2013 12:08:44 +0200
+Subject: [PATCH] support 32 bpp pixmaps when 24 bpp fb is used.
+
+Fixes background corruption in ubuntu.
+
+Signed-off-by: Maarten Lankhorst <maarten.lankhorst@canonical.com>
+---
+ src/driver.c | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/driver.c b/src/driver.c
+index 06d6d53..742aadd 100644
+--- a/src/driver.c
++++ b/src/driver.c
+@@ -650,7 +650,7 @@ PreInit(ScrnInfoPtr pScrn, int flags)
+ #endif
+     drmmode_get_default_bpp(pScrn, &ms->drmmode, &defaultdepth, &defaultbpp);
+     if (defaultdepth == 24 && defaultbpp == 24)
+-	    bppflags = Support24bppFb;
++	    bppflags = SupportConvert32to24 | Support24bppFb;
+     else
+ 	    bppflags = PreferConvert24to32 | SupportConvert24to32 | Support32bppFb;
+     
+-- 
+1.8.3
+
diff --git a/meta/recipes-graphics/xorg-driver/xf86-video-modesetting_0.7.0.bb b/meta/recipes-graphics/xorg-driver/xf86-video-modesetting_0.7.0.bb
index e45703f..9f43402 100644
--- a/meta/recipes-graphics/xorg-driver/xf86-video-modesetting_0.7.0.bb
+++ b/meta/recipes-graphics/xorg-driver/xf86-video-modesetting_0.7.0.bb
@@ -3,5 +3,7 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=5e53d3fcadb1c23d122ad63cb099a918"
 
 DESCRIPTION = "X.Org X server -- modesetting display driver"
 
+SRC_URI += "file://support-32-bpp-pixmaps-when-24-bpp-fb-is-used.patch"
+
 SRC_URI[md5sum] = "38e64eb09cef9bdf1de400bbe9818321"
 SRC_URI[sha256sum] = "2bc55f776eaee7b4e13df13238d36c4facf1cdca095a11519baf2376f5c996ac"