Accepting request 124244 from X11:XOrg
- U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch * that one is required to fix the rendering corruption in UMS introduced with the previous patch (bnc#765973) - U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch * Attempt to fix solid picture acceleration with UMS. (fdo#49182, bnc#765973) OBS-URL: https://build.opensuse.org/request/show/124244 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/xf86-video-ati?expand=0&rev=3
This commit is contained in:
commit
75d0fa5777
65
U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch
Normal file
65
U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch
Normal file
@ -0,0 +1,65 @@
|
|||||||
|
From 6bda7ceda645e838723883d133d614def1511d16 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
|
||||||
|
Date: Thu, 3 May 2012 15:07:30 +0200
|
||||||
|
Subject: [PATCH] EXA: Attempt to fix solid picture acceleration with UMS.
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
Only compile tested, but should fix
|
||||||
|
https://bugs.freedesktop.org/show_bug.cgi?id=49182 .
|
||||||
|
|
||||||
|
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
||||||
|
---
|
||||||
|
src/radeon_exa_shared.c | 27 ++++++++++++++++++++++-----
|
||||||
|
1 files changed, 22 insertions(+), 5 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/radeon_exa_shared.c b/src/radeon_exa_shared.c
|
||||||
|
index 28dc335..31e2870 100644
|
||||||
|
--- a/src/radeon_exa_shared.c
|
||||||
|
+++ b/src/radeon_exa_shared.c
|
||||||
|
@@ -128,19 +128,36 @@ Bool RADEONCheckBPP(int bpp)
|
||||||
|
|
||||||
|
PixmapPtr RADEONSolidPixmap(ScreenPtr pScreen, uint32_t solid)
|
||||||
|
{
|
||||||
|
+ ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
|
||||||
|
+ RADEONInfoPtr info = RADEONPTR(pScrn);
|
||||||
|
PixmapPtr pPix = pScreen->CreatePixmap(pScreen, 1, 1, 32, 0);
|
||||||
|
- struct radeon_bo *bo;
|
||||||
|
|
||||||
|
exaMoveInPixmap(pPix);
|
||||||
|
- bo = radeon_get_pixmap_bo(pPix);
|
||||||
|
|
||||||
|
- if (radeon_bo_map(bo, 1)) {
|
||||||
|
+#if defined(XF86DRM_MODE)
|
||||||
|
+ if (info->cs) {
|
||||||
|
+ struct radeon_bo *bo;
|
||||||
|
+
|
||||||
|
+ bo = radeon_get_pixmap_bo(pPix);
|
||||||
|
+
|
||||||
|
+ if (radeon_bo_map(bo, 1)) {
|
||||||
|
+ pScreen->DestroyPixmap(pPix);
|
||||||
|
+ return NULL;
|
||||||
|
+ }
|
||||||
|
+
|
||||||
|
+ memcpy(bo->ptr, &solid, 4);
|
||||||
|
+ radeon_bo_unmap(bo);
|
||||||
|
+
|
||||||
|
+ return pPix;
|
||||||
|
+ }
|
||||||
|
+#endif
|
||||||
|
+
|
||||||
|
+ if (!exaDrawableIsOffscreen(&pPix->drawable)) {
|
||||||
|
pScreen->DestroyPixmap(pPix);
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
- memcpy(bo->ptr, &solid, 4);
|
||||||
|
- radeon_bo_unmap(bo);
|
||||||
|
+ memcpy(info->FB + exaGetPixmapOffset(pPix), &solid, 4);
|
||||||
|
|
||||||
|
return pPix;
|
||||||
|
}
|
||||||
|
--
|
||||||
|
1.7.3.4
|
||||||
|
|
31
U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch
Normal file
31
U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
From b0b7d8d26fd107df342b5c87b0a38e5bb08101a9 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Michel=20D=C3=A4nzer?= <michel.daenzer@amd.com>
|
||||||
|
Date: Wed, 9 May 2012 11:08:49 +0200
|
||||||
|
Subject: [PATCH] EXA/UMS: Synchronize to the GPU before writing solid colour to scratch pixmap.
|
||||||
|
MIME-Version: 1.0
|
||||||
|
Content-Type: text/plain; charset=UTF-8
|
||||||
|
Content-Transfer-Encoding: 8bit
|
||||||
|
|
||||||
|
UMS doesn't do this automagically. It's a big hammer that will probably suck
|
||||||
|
for performance, but I don't have any better ideas right now.
|
||||||
|
|
||||||
|
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
|
||||||
|
---
|
||||||
|
src/radeon_exa_shared.c | 1 +
|
||||||
|
1 files changed, 1 insertions(+), 0 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/src/radeon_exa_shared.c b/src/radeon_exa_shared.c
|
||||||
|
index 31e2870..45222b5 100644
|
||||||
|
--- a/src/radeon_exa_shared.c
|
||||||
|
+++ b/src/radeon_exa_shared.c
|
||||||
|
@@ -157,6 +157,7 @@ PixmapPtr RADEONSolidPixmap(ScreenPtr pScreen, uint32_t solid)
|
||||||
|
return NULL;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ info->accel_state->exa->WaitMarker(pScreen, info->accel_state->exaSyncMarker);
|
||||||
|
memcpy(info->FB + exaGetPixmapOffset(pPix), &solid, 4);
|
||||||
|
|
||||||
|
return pPix;
|
||||||
|
--
|
||||||
|
1.7.3.4
|
||||||
|
|
@ -1,3 +1,17 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 8 14:58:57 UTC 2012 - sndirsch@suse.com
|
||||||
|
|
||||||
|
- U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch
|
||||||
|
* that one is required to fix the rendering corruption in UMS
|
||||||
|
introduced with the previous patch (bnc#765973)
|
||||||
|
|
||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Jun 8 12:52:45 UTC 2012 - sndirsch@suse.com
|
||||||
|
|
||||||
|
- U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch
|
||||||
|
* Attempt to fix solid picture acceleration with UMS. (fdo#49182,
|
||||||
|
bnc#765973)
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed May 16 09:48:51 UTC 2012 - idonmez@suse.com
|
Wed May 16 09:48:51 UTC 2012 - idonmez@suse.com
|
||||||
|
|
||||||
|
@ -16,7 +16,6 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
Name: xf86-video-ati
|
Name: xf86-video-ati
|
||||||
Version: 6.14.4
|
Version: 6.14.4
|
||||||
Release: 0
|
Release: 0
|
||||||
@ -32,6 +31,8 @@ Patch5: U_xf86-video-ati-6.14.4-exa-solid-accel-evergreen.patch
|
|||||||
Patch6: U_xf86-video-ati-6.14.4-exa-solid-accel-r100.patch
|
Patch6: U_xf86-video-ati-6.14.4-exa-solid-accel-r100.patch
|
||||||
Patch7: U_xf86-video-ati-6.14.4-exa-solid-accel-r200.patch
|
Patch7: U_xf86-video-ati-6.14.4-exa-solid-accel-r200.patch
|
||||||
Patch8: U_xf86-video-ati-6.14.4-exa-solid-accel-r300.patch
|
Patch8: U_xf86-video-ati-6.14.4-exa-solid-accel-r300.patch
|
||||||
|
Patch9: U_EXA-Attempt-to-fix-solid-picture-acceleration-with-U.patch
|
||||||
|
Patch10: U_EXA-UMS-Synchronize-to-the-GPU-before-writing-solid-.patch
|
||||||
BuildRequires: Mesa-devel
|
BuildRequires: Mesa-devel
|
||||||
BuildRequires: pkg-config
|
BuildRequires: pkg-config
|
||||||
BuildRequires: pkgconfig(fontsproto)
|
BuildRequires: pkgconfig(fontsproto)
|
||||||
@ -71,6 +72,8 @@ driver as appropriate.
|
|||||||
%patch6 -p1
|
%patch6 -p1
|
||||||
%patch7 -p1
|
%patch7 -p1
|
||||||
%patch8 -p1
|
%patch8 -p1
|
||||||
|
%patch9 -p1
|
||||||
|
%patch10 -p1
|
||||||
|
|
||||||
%build
|
%build
|
||||||
%configure
|
%configure
|
||||||
|
Loading…
x
Reference in New Issue
Block a user