[xorg-x11-drv-nouveau/f14/master] fix noaccel rotation, and NVAF support

Ben Skeggs bskeggs at fedoraproject.org
Sun Sep 19 22:16:02 UTC 2010


commit 56f02b7b33fa3eb4190486dcbd2e32650b05f929
Author: Ben Skeggs <bskeggs at redhat.com>
Date:   Mon Sep 20 08:15:12 2010 +1000

    fix noaccel rotation, and NVAF support

 .gitignore                        |    1 +
 nouveau-bgnr.patch                |    6 +++---
 nouveau-exa-no-pa_fa.patch        |   10 +++++-----
 nouveau-nva0-corruption-fix.patch |   14 +++++++-------
 nouveau-zfill-fallback.patch      |   14 +++++++-------
 sources                           |    2 +-
 xorg-x11-drv-nouveau.spec         |   10 +++++++---
 7 files changed, 31 insertions(+), 26 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 82d111a..c3cf2a1 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,3 +1,4 @@
 xf86-video-nouveau-0.0.16-20100615gitdb98ad2.tar.bz2
 /xf86-video-nouveau-0.0.16-20100820git390f1c8.tar.bz2
 /xf86-video-nouveau-0.0.16-20100826git065576d.tar.bz2
+/xf86-video-nouveau-0.0.16-20100920gitf1ac413.tar.bz2
diff --git a/nouveau-bgnr.patch b/nouveau-bgnr.patch
index 6eb97ee..2852d4f 100644
--- a/nouveau-bgnr.patch
+++ b/nouveau-bgnr.patch
@@ -1,4 +1,4 @@
-From 9d9b64b9b58044e2b447e5094359bdfaf3903c01 Mon Sep 17 00:00:00 2001
+From d6a2ba62e5904e12f7e00101bfe717a33b0e8734 Mon Sep 17 00:00:00 2001
 From: Ben Skeggs <bskeggs at redhat.com>
 Date: Mon, 8 Feb 2010 12:51:47 +1000
 Subject: [PATCH 1/4] set canDoBGNoneRoot
@@ -8,10 +8,10 @@ Subject: [PATCH 1/4] set canDoBGNoneRoot
  1 files changed, 1 insertions(+), 0 deletions(-)
 
 diff --git a/src/nv_driver.c b/src/nv_driver.c
-index bd061ed..6ed4742 100644
+index 8fd1fa4..194dbcd 100644
 --- a/src/nv_driver.c
 +++ b/src/nv_driver.c
-@@ -671,6 +671,7 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
+@@ -672,6 +672,7 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
  
  	/* Set pScrn->monitor */
  	pScrn->monitor = pScrn->confScreen->monitor;
diff --git a/nouveau-exa-no-pa_fa.patch b/nouveau-exa-no-pa_fa.patch
index a339911..a71d8b2 100644
--- a/nouveau-exa-no-pa_fa.patch
+++ b/nouveau-exa-no-pa_fa.patch
@@ -1,4 +1,4 @@
-From 3c65e27305887b4ad7519d5279383bf61d094803 Mon Sep 17 00:00:00 2001
+From 11dc83249b841926d2cbcf9a9880770c0d1ce13e Mon Sep 17 00:00:00 2001
 From: Ben Skeggs <bskeggs at redhat.com>
 Date: Mon, 5 Jul 2010 09:14:51 +1000
 Subject: [PATCH 3/4] use UTS/DFS rather than libwfb for tiled pixmap access
@@ -10,10 +10,10 @@ Subject: [PATCH 3/4] use UTS/DFS rather than libwfb for tiled pixmap access
  3 files changed, 7 insertions(+), 2 deletions(-)
 
 diff --git a/src/drmmode_display.c b/src/drmmode_display.c
-index 586b0ac..31912c6 100644
+index 58ffb1d..1a38b37 100644
 --- a/src/drmmode_display.c
 +++ b/src/drmmode_display.c
-@@ -1016,7 +1016,7 @@ drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
+@@ -1024,7 +1024,7 @@ drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
  	if (scrn->virtualX == width && scrn->virtualY == height)
  		return TRUE;
  
@@ -41,10 +41,10 @@ index 3b2c9be..3d848b5 100644
  		return FALSE;
  	ppix->devPrivate.ptr = bo->map;
 diff --git a/src/nv_driver.c b/src/nv_driver.c
-index 1cd3706..bec35aa 100644
+index 636b8bb..f770179 100644
 --- a/src/nv_driver.c
 +++ b/src/nv_driver.c
-@@ -775,7 +775,7 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
+@@ -776,7 +776,7 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
  	}
  
  	if (!pNv->NoAccel && pNv->Architecture >= NV_ARCH_50) {
diff --git a/nouveau-nva0-corruption-fix.patch b/nouveau-nva0-corruption-fix.patch
index 3db2119..08116ec 100644
--- a/nouveau-nva0-corruption-fix.patch
+++ b/nouveau-nva0-corruption-fix.patch
@@ -1,4 +1,4 @@
-From 5ac31ff205605b0887940027df6c5267c0a632bb Mon Sep 17 00:00:00 2001
+From bdacdeebf109f7de8a4394415390439b6c942d6d Mon Sep 17 00:00:00 2001
 From: Ben Skeggs <bskeggs at redhat.com>
 Date: Mon, 10 May 2010 08:31:36 +1000
 Subject: [PATCH 2/4] force consistant tiling mode to prevent corruption issues
@@ -9,19 +9,19 @@ Subject: [PATCH 2/4] force consistant tiling mode to prevent corruption issues
  2 files changed, 3 insertions(+), 3 deletions(-)
 
 diff --git a/src/drmmode_display.c b/src/drmmode_display.c
-index 9b5d52d..586b0ac 100644
+index 011f4dd..58ffb1d 100644
 --- a/src/drmmode_display.c
 +++ b/src/drmmode_display.c
-@@ -420,7 +420,7 @@ drmmode_crtc_shadow_allocate(xf86CrtcPtr crtc, int width, int height)
+@@ -426,7 +426,7 @@ drmmode_crtc_shadow_allocate(xf86CrtcPtr crtc, int width, int height)
  
- 	if (pNv->Architecture >= NV_ARCH_50) {
+ 	if (pNv->Architecture >= NV_ARCH_50 && pNv->tiled_scanout) {
  		tile_mode = 4;
 -		tile_flags = (drmmode->cpp == 2) ? 0x7000 : 0x7a00;
 +		tile_flags = 0x7000; //(drmmode->cpp == 2) ? 0x7000 : 0x7a00;
  		ah = NOUVEAU_ALIGN(height, 1 << (tile_mode + 2));
  		pitch = NOUVEAU_ALIGN(width * drmmode->cpp, 64);
  	} else {
-@@ -1018,7 +1018,7 @@ drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
+@@ -1026,7 +1026,7 @@ drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
  
  	if (pNv->Architecture >= NV_ARCH_50 && pNv->wfb_enabled) {
  		tile_mode = 4;
@@ -31,10 +31,10 @@ index 9b5d52d..586b0ac 100644
  		pitch = NOUVEAU_ALIGN(width * (scrn->bitsPerPixel >> 3), 64);
  	} else {
 diff --git a/src/nv_driver.c b/src/nv_driver.c
-index 6ed4742..1cd3706 100644
+index 194dbcd..636b8bb 100644
 --- a/src/nv_driver.c
 +++ b/src/nv_driver.c
-@@ -859,7 +859,7 @@ NVMapMem(ScrnInfoPtr pScrn)
+@@ -860,7 +860,7 @@ NVMapMem(ScrnInfoPtr pScrn)
  	size = pScrn->displayWidth * (pScrn->bitsPerPixel >> 3);
  	if (pNv->Architecture >= NV_ARCH_50 && pNv->tiled_scanout) {
  		tile_mode = 4;
diff --git a/nouveau-zfill-fallback.patch b/nouveau-zfill-fallback.patch
index 3263020..2224c25 100644
--- a/nouveau-zfill-fallback.patch
+++ b/nouveau-zfill-fallback.patch
@@ -1,4 +1,4 @@
-From 36c4a67c03bae8789dce8379d1319c7ef1dbeb46 Mon Sep 17 00:00:00 2001
+From 8ffcfc0c5f1c79d1813333cf20b4adec1f00bf1a Mon Sep 17 00:00:00 2001
 From: Ben Skeggs <bskeggs at redhat.com>
 Date: Mon, 5 Jul 2010 09:15:25 +1000
 Subject: [PATCH 4/4] zfill framebuffer as fallback if fbcon copy fails
@@ -8,10 +8,10 @@ Subject: [PATCH 4/4] zfill framebuffer as fallback if fbcon copy fails
  1 files changed, 16 insertions(+), 19 deletions(-)
 
 diff --git a/src/drmmode_display.c b/src/drmmode_display.c
-index 31912c6..5986a21 100644
+index 1a38b37..c33fcc7 100644
 --- a/src/drmmode_display.c
 +++ b/src/drmmode_display.c
-@@ -178,13 +178,8 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
+@@ -183,13 +183,8 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
  	unsigned w = pScrn->virtualX, h = pScrn->virtualY;
  	int i, ret, fbcon_id = 0;
  
@@ -27,7 +27,7 @@ index 31912c6..5986a21 100644
  
  	for (i = 0; i < xf86_config->num_crtc; i++) {
  		drmmode_crtc_private_ptr drmmode_crtc =
-@@ -195,32 +190,27 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
+@@ -200,32 +195,27 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
  	}
  
  	if (!fbcon_id)
@@ -65,7 +65,7 @@ index 31912c6..5986a21 100644
  	}
  
  	pspix = drmmode_pixmap_wrap(pScreen, fb->width, fb->height,
-@@ -230,7 +220,7 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
+@@ -235,7 +225,7 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
  	if (!pspix) {
  		xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
  			   "Failed to create pixmap for fbcon contents\n");
@@ -74,7 +74,7 @@ index 31912c6..5986a21 100644
  	}
  
  	pdpix = drmmode_pixmap_wrap(pScreen, pScrn->virtualX,
-@@ -241,7 +231,7 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
+@@ -247,7 +237,7 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
  		xf86DrvMsg(pScrn->scrnIndex, X_WARNING,
  			   "Failed to init scanout pixmap for fbcon mirror\n");
  		pScreen->DestroyPixmap(pspix);
@@ -83,7 +83,7 @@ index 31912c6..5986a21 100644
  	}
  
  	exa->PrepareCopy(pspix, pdpix, 0, 0, GXcopy, ~0);
-@@ -257,6 +247,13 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
+@@ -263,6 +253,13 @@ drmmode_fbcon_copy(ScreenPtr pScreen)
  
  	pScreen->DestroyPixmap(pdpix);
  	pScreen->DestroyPixmap(pspix);
diff --git a/sources b/sources
index ec37781..7e1be04 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-72a686aa28b3c8a6e4f2303c5f4bf145  xf86-video-nouveau-0.0.16-20100826git065576d.tar.bz2
+2454cf061e0c8f53d7a687cef8d6032c  xf86-video-nouveau-0.0.16-20100920gitf1ac413.tar.bz2
diff --git a/xorg-x11-drv-nouveau.spec b/xorg-x11-drv-nouveau.spec
index 2ba5bd2..174be19 100644
--- a/xorg-x11-drv-nouveau.spec
+++ b/xorg-x11-drv-nouveau.spec
@@ -7,8 +7,8 @@
 # git clone git://git.freedesktop.org/git/nouveau/xf86-video-nouveau
 # git-archive --format=tar --prefix=xf86-video-nouveau-0.0.10/ %{git_version} | bzip2 > xf86-video-nouveau-0.0.10-%{gitdate}.tar.bz2
 
-%define gitdate 20100826
-%define git_version 065576d
+%define gitdate 20100920
+%define git_version f1ac413
 
 %define snapshot %{gitdate}git%{git_version}
 
@@ -19,7 +19,7 @@ Name:      xorg-x11-drv-nouveau
 # need to set an epoch to get version number in sync with upstream
 Epoch:     1
 Version:   %{nouveau_version}
-Release:   11.%{snapshot}%{?dist}
+Release:   12.%{snapshot}%{?dist}
 URL:       http://www.x.org
 License:   MIT
 Group:     User Interface/X Hardware Support
@@ -80,6 +80,10 @@ rm -rf $RPM_BUILD_ROOT
 %{_mandir}/man4/nouveau.4*
 
 %changelog
+* Mon Sep 20 2010 Ben Skeggs <bskeggs at redhat.com> 0.0.16-12.20100920gitf1ac413
+- fix NVAF 3D engine object class (rhbz#635026)
+- fix rotation when in NoAccel mode
+
 * Tue Aug 31 2010 Ben Skeggs <bskeggs at redhat.com> 0.0.16-11.20100826git065576d
 - fix race with composite managers
 


More information about the scm-commits mailing list