rpms/xorg-x11-drv-nouveau/devel .cvsignore, 1.48, 1.49 nouveau-bicubic-2x.patch, 1.16, 1.17 nouveau-multiple-xserver.patch, 1.18, 1.19 nouveau-tile7000.patch, 1.6, 1.7 sources, 1.49, 1.50 xorg-x11-drv-nouveau.spec, 1.61, 1.62
Ben Skeggs
bskeggs at fedoraproject.org
Wed Dec 23 01:03:09 UTC 2009
Author: bskeggs
Update of /cvs/pkgs/rpms/xorg-x11-drv-nouveau/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv31640
Modified Files:
.cvsignore nouveau-bicubic-2x.patch
nouveau-multiple-xserver.patch nouveau-tile7000.patch sources
xorg-x11-drv-nouveau.spec
Log Message:
* Wed Dec 23 2009 Ben Skeggs <bskeggs at redhat.com> 0.0.15-14.20091217gitbb19478
- update to latest upstream code
Index: .cvsignore
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-nouveau/devel/.cvsignore,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -p -r1.48 -r1.49
--- .cvsignore 29 Sep 2009 01:38:15 -0000 1.48
+++ .cvsignore 23 Dec 2009 01:03:08 -0000 1.49
@@ -1 +1 @@
-xf86-video-nouveau-0.0.15-20090929gitdd8339f.tar.bz2
+xf86-video-nouveau-0.0.15-20091217gitbb19478.tar.bz2
nouveau-bicubic-2x.patch:
nv30_xv_tex.c | 7 +++++--
nv40_xv_tex.c | 9 ++++++---
2 files changed, 11 insertions(+), 5 deletions(-)
Index: nouveau-bicubic-2x.patch
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-nouveau/devel/nouveau-bicubic-2x.patch,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -p -r1.16 -r1.17
--- nouveau-bicubic-2x.patch 29 Sep 2009 01:38:15 -0000 1.16
+++ nouveau-bicubic-2x.patch 23 Dec 2009 01:03:08 -0000 1.17
@@ -1,39 +1,64 @@
-From 0c60f12c250e244d5d6a245c0df3b941a176aa59 Mon Sep 17 00:00:00 2001
+From bfb7ff157378c4c70817c44471a62b9b54d1a8cc Mon Sep 17 00:00:00 2001
From: Ben Skeggs <skeggsb at beleth.localdomain>
Date: Mon, 4 May 2009 17:04:34 +1000
Subject: [PATCH 2/3] xv: only use bicubic filtering when scaling >=2x
---
- src/nv30_xv_tex.c | 2 +-
- src/nv40_xv_tex.c | 2 +-
- 2 files changed, 2 insertions(+), 2 deletions(-)
+ src/nv30_xv_tex.c | 7 +++++--
+ src/nv40_xv_tex.c | 8 ++++++--
+ 2 files changed, 11 insertions(+), 4 deletions(-)
diff --git a/src/nv30_xv_tex.c b/src/nv30_xv_tex.c
-index cd76279..25cae64 100644
+index 2d90e8b..bb0667c 100644
--- a/src/nv30_xv_tex.c
+++ b/src/nv30_xv_tex.c
-@@ -324,7 +324,7 @@ NV30PutTextureImage(ScrnInfoPtr pScrn, struct nouveau_bo *src, int src_offset,
+@@ -259,7 +259,7 @@ NV30PutTextureImage(ScrnInfoPtr pScrn, struct nouveau_bo *src, int src_offset,
+ struct nouveau_grobj *rankine = pNv->Nv3D;
+ struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ unsigned delta = nouveau_pixmap_offset(ppix);
+- Bool redirected = FALSE;
++ Bool redirected = FALSE, bicubic = pPriv->bicubic;
+ float X1, X2, Y1, Y2;
+ BoxPtr pbox;
+ int nbox;
+@@ -343,7 +343,10 @@ NV30PutTextureImage(ScrnInfoPtr pScrn, struct nouveau_bo *src, int src_offset,
BEGIN_RING(chan, rankine, NV34TCL_TX_ENABLE(3), 1);
OUT_RING (chan, 0x0);
-- if (pPriv->bicubic)
-+ if (pPriv->bicubic && (drw_w / 2 >= src_w) && (drw_h / 2 >= src_h))
- NV30_LoadFragProg(pScrn, &nv30_fp_yv12_bicubic);
- else
- NV30_LoadFragProg(pScrn, &nv30_fp_yv12_bilinear);
+- if (!NV30_LoadFragProg(pScrn, pPriv->bicubic ?
++ if (drw_w / 2 < src_w || drw_h / 2 < src_h)
++ bicubic = FALSE;
++
++ if (!NV30_LoadFragProg(pScrn, bicubic ?
+ &nv30_fp_yv12_bicubic :
+ &nv30_fp_yv12_bilinear)) {
+ MARK_UNDO(chan);
diff --git a/src/nv40_xv_tex.c b/src/nv40_xv_tex.c
-index 3d1f146..e0efb41 100644
+index 463b178..20a5dc9 100644
--- a/src/nv40_xv_tex.c
+++ b/src/nv40_xv_tex.c
-@@ -299,7 +299,7 @@ NV40PutTextureImage(ScrnInfoPtr pScrn,
- NV40VideoTexture(pScrn, src, src_offset2, src_w/2, src_h/2, src_pitch, 2);
+@@ -263,7 +263,7 @@ NV40PutTextureImage(ScrnInfoPtr pScrn,
+ struct nouveau_grobj *curie = pNv->Nv3D;
+ struct nouveau_bo *bo = nouveau_pixmap_bo(ppix);
+ unsigned delta = nouveau_pixmap_offset(ppix);
+- Bool redirected = FALSE;
++ Bool redirected = FALSE, bicubic = pPriv->bicubic;
+ float X1, X2, Y1, Y2;
+ BoxPtr pbox;
+ int nbox;
+@@ -323,7 +323,11 @@ NV40PutTextureImage(ScrnInfoPtr pScrn,
+ }
NV40_LoadVtxProg(pScrn, &nv40_vp_video);
-- if (pPriv->bicubic)
-+ if (pPriv->bicubic && (drw_w / 2 >= src_w) && (drw_h / 2 >= src_h))
- NV40_LoadFragProg(pScrn, &nv40_fp_yv12_bicubic);
- else
- NV40_LoadFragProg(pScrn, &nv30_fp_yv12_bilinear);
+- if (!NV40_LoadFragProg(pScrn, pPriv->bicubic ?
++
++ if (drw_w / 2 < src_w || drw_h / 2 < src_h)
++ bicubic = FALSE;
++
++ if (!NV40_LoadFragProg(pScrn, bicubic ?
+ &nv40_fp_yv12_bicubic :
+ &nv30_fp_yv12_bilinear)) {
+ MARK_UNDO(chan);
--
-1.6.4.4
+1.6.5.2
nouveau-multiple-xserver.patch:
nv_driver.c | 85 ++++++++++++++++++++++++++++++++++++++++--------------------
1 file changed, 57 insertions(+), 28 deletions(-)
Index: nouveau-multiple-xserver.patch
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-nouveau/devel/nouveau-multiple-xserver.patch,v
retrieving revision 1.18
retrieving revision 1.19
diff -u -p -r1.18 -r1.19
--- nouveau-multiple-xserver.patch 29 Sep 2009 01:38:15 -0000 1.18
+++ nouveau-multiple-xserver.patch 23 Dec 2009 01:03:08 -0000 1.19
@@ -1,4 +1,4 @@
-From e81556ab7611efd9977f16a00ee09a194eb5bce1 Mon Sep 17 00:00:00 2001
+From f5f5acf8880da333615f893735e1c00184a9b25c Mon Sep 17 00:00:00 2001
From: Ben Skeggs <bskeggs at redhat.com>
Date: Sun, 28 Jun 2009 20:35:54 +1000
Subject: [PATCH 1/3] f12: hack to support multiple xserver instances
@@ -8,7 +8,7 @@ Subject: [PATCH 1/3] f12: hack to suppor
1 files changed, 57 insertions(+), 27 deletions(-)
diff --git a/src/nv_driver.c b/src/nv_driver.c
-index 879d971..e57a696 100644
+index a0656af..f5d4282 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -21,6 +21,7 @@
@@ -48,7 +48,7 @@ index 879d971..e57a696 100644
ret = drmDropMaster(nouveau_device(pNv->dev)->fd);
if (ret)
ErrorF("Error dropping master: %d\n", ret);
-@@ -1187,6 +1193,52 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
+@@ -1184,6 +1190,52 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
static Bool
@@ -101,7 +101,7 @@ index 879d971..e57a696 100644
NVMapMem(ScrnInfoPtr pScrn)
{
NVPtr pNv = NVPTR(pScrn);
-@@ -1226,6 +1278,9 @@ NVMapMem(ScrnInfoPtr pScrn)
+@@ -1223,6 +1275,9 @@ NVMapMem(ScrnInfoPtr pScrn)
goto skip_offscreen_gart;
if (!pNv->exa_driver_pixmaps) {
@@ -111,7 +111,7 @@ index 879d971..e57a696 100644
size = (pNv->VRAMPhysicalSize / 2) - size;
if (pNv->Architecture >= NV_ARCH_50) {
-@@ -1242,6 +1297,7 @@ NVMapMem(ScrnInfoPtr pScrn)
+@@ -1239,6 +1294,7 @@ NVMapMem(ScrnInfoPtr pScrn)
return FALSE;
}
@@ -119,7 +119,7 @@ index 879d971..e57a696 100644
xf86DrvMsg(pScrn->scrnIndex, X_INFO,
"Allocated %dMiB VRAM for offscreen pixmaps\n",
(uint32_t)(pNv->offscreen->size >> 20));
-@@ -1251,32 +1307,6 @@ NVMapMem(ScrnInfoPtr pScrn)
+@@ -1248,32 +1304,6 @@ NVMapMem(ScrnInfoPtr pScrn)
nouveau_bo_unmap(pNv->offscreen);
}
@@ -153,5 +153,5 @@ index 879d971..e57a696 100644
/* We don't need to allocate cursors / lut here if we're using
* kernel modesetting
--
-1.6.4.4
+1.6.5.2
nouveau-tile7000.patch:
drmmode_display.c | 4 ++--
nv_driver.c | 7 ++++++-
nv_type.h | 3 ++-
3 files changed, 10 insertions(+), 4 deletions(-)
Index: nouveau-tile7000.patch
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-nouveau/devel/nouveau-tile7000.patch,v
retrieving revision 1.6
retrieving revision 1.7
diff -u -p -r1.6 -r1.7
--- nouveau-tile7000.patch 29 Sep 2009 01:38:15 -0000 1.6
+++ nouveau-tile7000.patch 23 Dec 2009 01:03:08 -0000 1.7
@@ -1,4 +1,4 @@
-From 682b24f8d6fb5053ed8b89cacaaca4dd25c03a16 Mon Sep 17 00:00:00 2001
+From d1156e2b36eb129bb86d6da5dd4d15e23afb5d2b Mon Sep 17 00:00:00 2001
From: Ben Skeggs <bskeggs at redhat.com>
Date: Wed, 9 Sep 2009 16:26:25 +1000
Subject: [PATCH 3/3] f12: use 0x7000 flags for scanout to avoid mixed tile mode corruption
@@ -10,10 +10,10 @@ Subject: [PATCH 3/3] f12: use 0x7000 fla
3 files changed, 10 insertions(+), 3 deletions(-)
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
-index 82b86c4..1157221 100644
+index 759cdb8..6d51f0e 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
-@@ -443,7 +443,7 @@ drmmode_crtc_shadow_allocate(xf86CrtcPtr crtc, int width, int height)
+@@ -465,7 +465,7 @@ drmmode_crtc_shadow_allocate(xf86CrtcPtr crtc, int width, int height)
if (pNv->Architecture >= NV_ARCH_50) {
tile_mode = 4;
@@ -22,7 +22,7 @@ index 82b86c4..1157221 100644
ah = NOUVEAU_ALIGN(height, 1 << (tile_mode + 2));
pitch = NOUVEAU_ALIGN(width * drmmode->cpp, 64);
} else {
-@@ -1064,7 +1064,7 @@ drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
+@@ -1077,7 +1077,7 @@ drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
if (pNv->Architecture >= NV_ARCH_50 && pNv->wfb_enabled) {
tile_mode = 4;
@@ -32,10 +32,10 @@ index 82b86c4..1157221 100644
pitch = NOUVEAU_ALIGN(width * (scrn->bitsPerPixel >> 3), 64);
} else {
diff --git a/src/nv_driver.c b/src/nv_driver.c
-index e57a696..e0c1c10 100644
+index f5d4282..5eb6973 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
-@@ -696,6 +696,7 @@ NVPreInitDRM(ScrnInfoPtr pScrn)
+@@ -693,6 +693,7 @@ NVPreInitDRM(ScrnInfoPtr pScrn)
{
NVPtr pNv = NVPTR(pScrn);
drmVersion *version;
@@ -43,7 +43,7 @@ index e57a696..e0c1c10 100644
char *bus_id;
int ret;
-@@ -742,6 +743,10 @@ NVPreInitDRM(ScrnInfoPtr pScrn)
+@@ -739,6 +740,10 @@ NVPreInitDRM(ScrnInfoPtr pScrn)
return FALSE;
}
@@ -54,7 +54,7 @@ index e57a696..e0c1c10 100644
/* Check if KMS is enabled before we do anything, we don't want to
* go stomping on registers behind its back
*/
-@@ -1256,7 +1261,7 @@ NVMapMem(ScrnInfoPtr pScrn)
+@@ -1253,7 +1258,7 @@ NVMapMem(ScrnInfoPtr pScrn)
size = pScrn->displayWidth * (pScrn->bitsPerPixel >> 3);
if (pNv->Architecture >= NV_ARCH_50 && pNv->tiled_scanout) {
tile_mode = 4;
@@ -64,7 +64,7 @@ index e57a696..e0c1c10 100644
} else {
size *= pScrn->virtualY;
diff --git a/src/nv_type.h b/src/nv_type.h
-index ddf121c..6e1f2f3 100644
+index 6face1f..ab533e0 100644
--- a/src/nv_type.h
+++ b/src/nv_type.h
@@ -113,6 +113,8 @@ typedef struct _NVRec {
@@ -77,5 +77,5 @@ index ddf121c..6e1f2f3 100644
struct nouveau_bo * scanout;
struct nouveau_bo * offscreen;
--
-1.6.4.4
+1.6.5.2
Index: sources
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-nouveau/devel/sources,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -p -r1.49 -r1.50
--- sources 29 Sep 2009 01:38:15 -0000 1.49
+++ sources 23 Dec 2009 01:03:09 -0000 1.50
@@ -1 +1 @@
-e98437442d84c9ca595adc6ae9665eff xf86-video-nouveau-0.0.15-20090929gitdd8339f.tar.bz2
+0b0d9da8e0f3c1e34b39b2d89c99eb1c xf86-video-nouveau-0.0.15-20091217gitbb19478.tar.bz2
Index: xorg-x11-drv-nouveau.spec
===================================================================
RCS file: /cvs/pkgs/rpms/xorg-x11-drv-nouveau/devel/xorg-x11-drv-nouveau.spec,v
retrieving revision 1.61
retrieving revision 1.62
diff -u -p -r1.61 -r1.62
--- xorg-x11-drv-nouveau.spec 29 Sep 2009 01:38:15 -0000 1.61
+++ xorg-x11-drv-nouveau.spec 23 Dec 2009 01:03:09 -0000 1.62
@@ -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 20090929
-%define git_version dd8339f
+%define gitdate 20091217
+%define git_version bb19478
%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: 13.%{snapshot}%{?dist}
+Release: 14.%{snapshot}%{?dist}
URL: http://www.x.org
License: MIT
Group: User Interface/X Hardware Support
@@ -83,6 +83,9 @@ rm -rf $RPM_BUILD_ROOT
%{_mandir}/man4/nouveau.4*
%changelog
+* Wed Dec 23 2009 Ben Skeggs <bskeggs at redhat.com> 0.0.15-14.20091217gitbb19478
+- update to latest upstream code
+
* Tue Sep 29 2009 Ben Skeggs <bskeggs at redhat.com> 0.0.15-13.20090929gitdd8339f
- fix driver to work again with recent EXA changes
More information about the scm-commits
mailing list