xserver-xorg-video-nouveau: Changes to 'ubuntu'
ChangeLog | 459 ++++++++++++++++++++++++
configure.ac | 2
debian/README.Debian | 21 -
debian/README.source | 20 +
debian/changelog | 61 +++
debian/control | 12
debian/patches/02_nouveau_bgnr | 21 -
debian/patches/03_use_older_libdrm_headers.diff | 205 ++++++++++
debian/patches/series | 2
debian/watch | 2
man/nouveau.man | 18
src/drmmode_display.c | 305 +++++++++++----
src/nouveau_class.h | 2
src/nouveau_dri2.c | 299 +++++++++++++++
src/nouveau_exa.c | 92 +---
src/nouveau_local.h | 11
src/nouveau_wfb.c | 2
src/nouveau_xv.c | 53 +-
src/nv04_exa.c | 39 +-
src/nv04_xv_blit.c | 13
src/nv10_exa.c | 1
src/nv30_exa.c | 1
src/nv30_shaders.c | 1
src/nv30_xv_tex.c | 20 -
src/nv40_exa.c | 1
src/nv40_xv_tex.c | 20 -
src/nv50_accel.c | 74 ++-
src/nv50_accel.h | 12
src/nv50_exa.c | 1
src/nv50_xv.c | 188 ++++++++-
src/nv_accel_common.c | 109 +++++
src/nv_const.h | 8
src/nv_dma.c | 24 -
src/nv_driver.c | 118 ++++--
src/nv_include.h | 4
src/nv_proto.h | 17
src/nv_type.h | 9
37 files changed, 1853 insertions(+), 394 deletions(-)
New commits:
commit a1e2fdcf0ff00e846b394c40d09319c54182fc12
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date: Thu Jan 27 09:00:16 2011 +1100
Document how to update to a new snapshot
diff --git a/debian/README.source b/debian/README.source
index b09a1ab..ed40ebd 100644
--- a/debian/README.source
+++ b/debian/README.source
@@ -14,6 +14,26 @@ Quick Guide To Patching This Package For The Impatient
Alternatively, instead of using quilt directly, you can drop the patch in to
debian/patches and add the name of the patch to debian/patches/series.
+---------------------
+Updating this package
+---------------------
+
+Because nouveau has no releases, packaging a new upstream version has a
+slightly different process to normal. As there is no canonical tarball,
+we need to generate one ourselves in such a way that it can be regenerated
+properly. To do this, we use the pristine-tar functionality of git-buildpackage
+
+The outline of an update is:
+
+ * Merge upstream into upstream-ubuntu
+ * Create a source tarball, including the git log as $(TOP)/ChangeLog
+ * Import this tarball with git-import-orig
+ * Update debian/changelog
+
+The easiest way to create a new source tarball is to run the get-orig-source
+target of debian/rules, which will create a tarball of upstream/master.
+git-buildpackage is set up to do the right thing when git-import-orig is called.
+
------------------------------------
Guide To The X Strike Force Packages
------------------------------------
diff --git a/debian/changelog b/debian/changelog
index c10af58..3401027 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -12,6 +12,8 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu1) natty; urgen
* debian/patches/02_nouveau_bgnr:
- Update to build against both Ubuntu-patched and upstream 1.10 BG None
ABIs.
+ * debian/README.source:
+ - Document how to update to a new upstream snapshot.
-- Christopher James Halse Rogers <raof@ubuntu.com> Wed, 26 Jan 2011 13:48:15 +1100
commit b17844a66a54d456633aa10c16b60969fe357385
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date: Wed Jan 26 13:49:41 2011 +1100
Refresh patches for new Xserver ABI, build against released libdrm
diff --git a/debian/changelog b/debian/changelog
index 5a3c3a8..c10af58 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,8 +6,14 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu1) natty; urgen
* Drop debian/patches/03_work-around-exa-hangs.patch; natty's 2.6.37 kernel
now has the accompanying kernel commit.
* New upstream snapshot
-
- -- Christopher James Halse Rogers <raof@ubuntu.com> Wed, 26 Jan 2011 13:05:54 +1100
+ * debian/patches/03_use_older_libdrm_headers.diff:
+ - Revert git commit c2092a45 which switches to post-2.4.23 split libdrm
+ headers.
+ * debian/patches/02_nouveau_bgnr:
+ - Update to build against both Ubuntu-patched and upstream 1.10 BG None
+ ABIs.
+
+ -- Christopher James Halse Rogers <raof@ubuntu.com> Wed, 26 Jan 2011 13:48:15 +1100
xserver-xorg-video-nouveau (1:0.0.16+git20101210+8bb8231-1) experimental; urgency=low
diff --git a/debian/patches/02_nouveau_bgnr b/debian/patches/02_nouveau_bgnr
index a53d99e..5951841 100644
--- a/debian/patches/02_nouveau_bgnr
+++ b/debian/patches/02_nouveau_bgnr
@@ -7,18 +7,19 @@ Subject: [PATCH 2/2] set canDoBGNoneRoot
src/nv_driver.c | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
-diff --git a/src/nv_driver.c b/src/nv_driver.c
-index 248a151..b5bc0a7 100644
---- a/src/nv_driver.c
-+++ b/src/nv_driver.c
-@@ -673,6 +673,7 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
-
+Index: xserver-xorg-video-nouveau/src/nv_driver.c
+===================================================================
+--- xserver-xorg-video-nouveau.orig/src/nv_driver.c 2011-01-26 13:23:04.621550002 +1100
++++ xserver-xorg-video-nouveau/src/nv_driver.c 2011-01-26 13:28:28.711550002 +1100
+@@ -690,6 +690,11 @@
/* Set pScrn->monitor */
pScrn->monitor = pScrn->confScreen->monitor;
-+ pScrn->canDoBGNoneRoot = 1;
++#if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) >= 9
++ pScrn->pScreen->canDoBGNoneRoot = 1;
++#else
++ pScrn->canDoBGNoneRoot = 1;
++#endif
/*
* The first thing we should figure out is the depth, bpp, etc.
---
-1.6.6.1
-
+ */
diff --git a/debian/patches/03_use_older_libdrm_headers.diff b/debian/patches/03_use_older_libdrm_headers.diff
new file mode 100644
index 0000000..4e4356b
--- /dev/null
+++ b/debian/patches/03_use_older_libdrm_headers.diff
@@ -0,0 +1,205 @@
+commit c2092a458401377f421d9bdfe1d97ce580b99508
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Mon Dec 20 11:50:57 2010 +1000
+
+ include nv04_pushbuf.h for ring macros, rather than nouveau_pushbuf.h
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c
+index 2dd6da4..45add0f 100644
+--- a/src/nouveau_dri2.c
++++ b/src/nouveau_dri2.c
+@@ -5,6 +5,7 @@
+
+ #include "xorg-server.h"
+ #include "nv_include.h"
++#include "nouveau_pushbuf.h"
+ #ifdef DRI2
+ #include "dri2.h"
+ #endif
+diff --git a/src/nouveau_exa.c b/src/nouveau_exa.c
+index 4618994..4e9f946 100644
+--- a/src/nouveau_exa.c
++++ b/src/nouveau_exa.c
+@@ -21,6 +21,7 @@
+ */
+
+ #include "nv_include.h"
++#include "nv04_pushbuf.h"
+ #include "exa.h"
+
+ static inline Bool
+diff --git a/src/nouveau_xv.c b/src/nouveau_xv.c
+index dba153c..c1d4ccb 100644
+--- a/src/nouveau_xv.c
++++ b/src/nouveau_xv.c
+@@ -35,6 +35,8 @@
+ #include "nv_include.h"
+ #include "nv_dma.h"
+
++#include "nv04_pushbuf.h"
++
+ #include "vl_hwmc.h"
+
+ #define IMAGE_MAX_W 2046
+diff --git a/src/nv04_exa.c b/src/nv04_exa.c
+index 2760d4b..f2819d2 100644
+--- a/src/nv04_exa.c
++++ b/src/nv04_exa.c
+@@ -23,6 +23,8 @@
+ #include "nv_include.h"
+ #include "nv_rop.h"
+
++#include "nv04_pushbuf.h"
++
+ static void
+ NV04EXASetPattern(ScrnInfoPtr pScrn, CARD32 clr0, CARD32 clr1,
+ CARD32 pat0, CARD32 pat1)
+diff --git a/src/nv04_xv_blit.c b/src/nv04_xv_blit.c
+index be39c0d..1b8de4f 100644
+--- a/src/nv04_xv_blit.c
++++ b/src/nv04_xv_blit.c
+@@ -34,6 +34,8 @@
+ #include "nv_include.h"
+ #include "nv_dma.h"
+
++#include "nv04_pushbuf.h"
++
+ #define FOURCC_RGB 0x0000003
+
+ #define VSYNC_POSSIBLE (pNv->dev->chipset >= 0x11)
+diff --git a/src/nv10_exa.c b/src/nv10_exa.c
+index 1acb583..1cf7a5b 100644
+--- a/src/nv10_exa.c
++++ b/src/nv10_exa.c
+@@ -28,6 +28,7 @@
+ #endif
+
+ #include "nv_include.h"
++#include "nv04_pushbuf.h"
+
+ /* Texture/Render target formats. */
+ static struct pict_format {
+diff --git a/src/nv30_exa.c b/src/nv30_exa.c
+index b34b29c..a4dd37d 100644
+--- a/src/nv30_exa.c
++++ b/src/nv30_exa.c
+@@ -25,6 +25,7 @@
+
+ #include "nv_include.h"
+ #include "nv30_shaders.h"
++#include "nv04_pushbuf.h"
+
+ typedef struct nv_pict_surface_format {
+ int pict_fmt;
+diff --git a/src/nv30_shaders.c b/src/nv30_shaders.c
+index 7316082..fb93ef8 100644
+--- a/src/nv30_shaders.c
++++ b/src/nv30_shaders.c
+@@ -22,6 +22,7 @@
+
+
+ #include "nv30_shaders.h"
++#include "nv04_pushbuf.h"
+
+ void NV30_UploadFragProg(NVPtr pNv, nv_shader_t *shader, int *hw_offset)
+ {
+diff --git a/src/nv30_xv_tex.c b/src/nv30_xv_tex.c
+index ffa68e4..6d4e089 100644
+--- a/src/nv30_xv_tex.c
++++ b/src/nv30_xv_tex.c
+@@ -37,6 +37,7 @@
+ #include "nv_dma.h"
+
+ #include "nv30_shaders.h"
++#include "nv04_pushbuf.h"
+
+ extern Atom xvSyncToVBlank, xvSetDefaults;
+
+diff --git a/src/nv40_exa.c b/src/nv40_exa.c
+index ffee0e6..b14a829 100644
+--- a/src/nv40_exa.c
++++ b/src/nv40_exa.c
+@@ -22,6 +22,7 @@
+
+ #include "nv_include.h"
+ #include "nv30_shaders.h"
++#include "nv04_pushbuf.h"
+
+ typedef struct nv_pict_surface_format {
+ int pict_fmt;
+diff --git a/src/nv40_xv_tex.c b/src/nv40_xv_tex.c
+index e0444e8..0910e12 100644
+--- a/src/nv40_xv_tex.c
++++ b/src/nv40_xv_tex.c
+@@ -37,6 +37,7 @@
+ #include "nv_dma.h"
+
+ #include "nv30_shaders.h"
++#include "nv04_pushbuf.h"
+
+ extern Atom xvSyncToVBlank, xvSetDefaults;
+
+diff --git a/src/nv50_accel.h b/src/nv50_accel.h
+index 9cdbbab..fac5cbb 100644
+--- a/src/nv50_accel.h
++++ b/src/nv50_accel.h
+@@ -1,6 +1,8 @@
+ #ifndef __NV50_ACCEL_H__
+ #define __NV50_ACCEL_H__
+
++#include "nv04_pushbuf.h"
++
+ /* "Tesla scratch buffer" offsets */
+ #define PVP_OFFSET 0x00000000 /* Vertex program */
+ #define PFP_OFFSET 0x00001000 /* Fragment program */
+diff --git a/src/nv50_exa.c b/src/nv50_exa.c
+index e86f903..e8ff5aa 100644
+--- a/src/nv50_exa.c
++++ b/src/nv50_exa.c
+@@ -24,6 +24,7 @@
+ #include "nv_include.h"
+ #include "nv_rop.h"
+
++#include "nv04_pushbuf.h"
+ #include "nv50_accel.h"
+ #include "nv50_texture.h"
+
+diff --git a/src/nv_accel_common.c b/src/nv_accel_common.c
+index 1ade291..b1553f6 100644
+--- a/src/nv_accel_common.c
++++ b/src/nv_accel_common.c
+@@ -21,6 +21,7 @@
+ */
+
+ #include "nv_include.h"
++#include "nv04_pushbuf.h"
+
+ Bool
+ nouveau_allocate_surface(ScrnInfoPtr scrn, int width, int height, int bpp,
+diff --git a/src/nv_driver.c b/src/nv_driver.c
+index e2df82e..f4aa2bc 100644
+--- a/src/nv_driver.c
++++ b/src/nv_driver.c
+@@ -24,6 +24,8 @@
+
+ #include "nv_include.h"
+
++#include "nouveau_pushbuf.h"
++
+ #include "xorg-server.h"
+ #include "xf86int10.h"
+ #include "xf86drm.h"
+diff --git a/src/nv_include.h b/src/nv_include.h
+index 48f0b21..9cb697a 100644
+--- a/src/nv_include.h
++++ b/src/nv_include.h
+@@ -75,7 +75,6 @@
+ #include "nouveau_drmif.h"
+ #include "nouveau_device.h"
+ #include "nouveau_channel.h"
+-#include "nouveau_pushbuf.h"
+ #include "nouveau_bo.h"
+ #include "nouveau_grobj.h"
+ #include "nouveau_notifier.h"
diff --git a/debian/patches/series b/debian/patches/series
index 57f5d9d..9fa7f76 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,2 +1,3 @@
01-set-NV_DRIVER_DATE-from-ChangeLog.diff
02_nouveau_bgnr
+03_use_older_libdrm_headers.diff -R
commit 81af67c68c8a9ada88f57e7ac9dc6a6d5eb631b9
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date: Wed Jan 26 13:24:35 2011 +1100
Update changelog
diff --git a/debian/changelog b/debian/changelog
index b9d0daa..5a3c3a8 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,14 @@
+xserver-xorg-video-nouveau (1:0.0.16+git20110107+b795ca6e-0ubuntu1) natty; urgency=low
+
+ * Merge from Debian experimental. Remaining Ubuntu changes:
+ - debian/patches/02_nouveau_bgnr:
+ + Patch from Fedora for a smooth Plymouth->GDM transition.
+ * Drop debian/patches/03_work-around-exa-hangs.patch; natty's 2.6.37 kernel
+ now has the accompanying kernel commit.
+ * New upstream snapshot
+
+ -- Christopher James Halse Rogers <raof@ubuntu.com> Wed, 26 Jan 2011 13:05:54 +1100
+
xserver-xorg-video-nouveau (1:0.0.16+git20101210+8bb8231-1) experimental; urgency=low
[ Sven Joachim ]
commit 8d2f1207d232c6c3ad3d0323b91434ad2bf8008e
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date: Wed Jan 26 13:00:35 2011 +1100
Imported Upstream version 0.0.16+git20110107+b795ca6e
diff --git a/ChangeLog b/ChangeLog
index 71b05d6..39fbc4c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,484 @@
+commit 889629becd8ac2ea718c3a2fc1f8be29596a8ffa
+Merge: b9f414c b795ca6
+Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
+Date: Wed Jan 26 12:56:27 2011 +1100
+
+ Merge commit 'b795ca6e97fae9' into upstream-ubuntu
+
+commit b795ca6e97fae9735843748585401098dae1c3e1
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Fri Jan 7 13:33:36 2011 +1000
+
+ nv50: fix pitch of linear scanout buffers
+
+ Un-breaks NoAccel on these chipsets.
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit dc89dac734167bcbc667b39ca6ee2043871a60bf
+Author: Xavier Chantry <chantry.xavier@gmail.com>
+Date: Sun Dec 19 23:17:34 2010 +0100
+
+ nv04/exa: kill useless WAIT_RING
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit b76b43928bf4dcf5ce3a4b58c7fefe780070c0d3
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Tue Dec 21 16:25:23 2010 +1000
+
+ add back generic include of nouveau_pushbuf.h
+
+ So places that FIRE_RING() still work.
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit c2092a458401377f421d9bdfe1d97ce580b99508
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Mon Dec 20 11:50:57 2010 +1000
+
+ include nv04_pushbuf.h for ring macros, rather than nouveau_pushbuf.h
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit aa2821a42706ac7b69703d1869e2d00a4ced9f4b
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Mon Dec 20 11:53:53 2010 +1000
+
+ kill NVSync(), it's rather useless
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 1fc564fe3494cf0abcc848d0e90bf2232f8fd272
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Thu Dec 16 09:49:09 2010 +1000
+
+ nv50/xv: use mad in nv12 shader, rather than mul+add
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit b6cb21b91f7d0409794a14ddbdd606728d4d49e3
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Mon Feb 8 12:51:47 2010 +1000
+
+ set canDoBGNoneRoot if building against new enough server
+
+commit 11510f9ce8c9eab15e7f6d5962b83fc0052c8619
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Tue Dec 14 15:39:01 2010 +1000
+
+ nv50/xv: implement brightness/contrast/saturation/hue controls
+
+ Adapted from the code in xf86-video-ati.
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 214ea264cdb386520a1308a29f204e441f349cb1
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Tue Dec 14 14:42:24 2010 +1000
+
+ nv50/xv: kick csc parameters out into a constant buffer
+
+ These were previously inlined into the shader, which is simple, but makes
+ implementing brightness/contrast adjustments impossible.
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 8bb8231236a6b877895663aeaa9cef731d67fe68
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Tue Nov 30 15:27:36 2010 +1000
+
+ dri2: fix certain clients blocking forever when sync-to-vblank unavailable
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit f29afe65b67c9b89ceba421d9b3aee590f7ded20
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Mon Nov 29 09:23:35 2010 +1000
+
+ dri2: don't return failure from get_msc if sync-to-vblank isn't available
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 4b1d26578116f4d1745dd92a7c99413972a2bedf
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Nov 25 21:33:46 2010 +0100
+
+ dri2: Don't return failure from schedule_wait if sync-to-vblank is unavailable.
+
+ Reported-by: Ben Skeggs <bskeggs@redhat.com>
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 1143e7a97dce1b741376e178b73b8b766e03849a
+Author: Jesse Adkins <jesserayadkins@gmail.com>
+Date: Tue Oct 26 16:05:32 2010 -0700
+
+ Purge cvs tags.
+
+ Signed-off-by: Jesse Adkins <jesserayadkins@gmail.com>
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 22020457f43eceaf26532ecb50e46d743f4a691f
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Tue Oct 26 00:24:06 2010 +0200
+
+ dri2: Fix throttling on occluded drawables.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 9737a812aacbc544b93eeaa031cf1c2e8adbd661
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Mon Oct 25 10:37:08 2010 +1000
+
+ kms: initial pass at supporting zaphod-mode
+
+ This works ok from some simple testing, there's undoubtedly things that
+ will need polishing still however.
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit d40c16f5497739c0215f37566db1651a74cb20ba
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Sat Oct 23 02:20:30 2010 +0200
+
+ dri2: Fix build on X server 1.8.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit a4d580bf05d7aac1d486e5d1ba9a2201c026e5f5
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Fri Oct 22 23:09:30 2010 +0200
+
+ Bump the required X server version to 1.8.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit d0f2e16bc35660d01d3cd20a770cf8e613ab5323
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Fri Oct 22 23:06:28 2010 +0200
+
+ dri2: Report damage on page-flipped drawables.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit c61e8d03161adcfbba4162172153814accf9e86b
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Fri Oct 22 23:05:24 2010 +0200
+
+ Make the sync-to-vblank helpers take a box as argument.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit a685a5c3be12f3e95a6ec1140af115e7ef28fcaa
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Wed Oct 13 18:45:04 2010 +0200
+
+ dri2: Implement the ScheduleWaitMSC/GetMSC hooks.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit eb83c830c87bce345748edef3b50660246143db7
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Oct 21 22:57:08 2010 +0200
+
+ dri2: Add pageflip/exchange support.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit c88f13e25b0040c1dd0f93e0ac40f62a6005ce59
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Oct 14 22:25:50 2010 +0200
+
+ Allocate a tiled scanout on pre-nv50 too.
+
+ Pageflip between tiled and non-tiled surfaces isn't such a good idea.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 4642d71bdffc04ce0dd458225541940c65f5443d
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Oct 14 22:17:58 2010 +0200
+
+ dri2: Give out buffers ready for scanout.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 75daada678d03d2e162f8003a6f2edcbe0525f92
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Oct 14 22:32:54 2010 +0200
+
+ Restructure tiled pixmap allocation in a single place.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 70f0d2c886ceaa965ca4864788f4dd8e8f757a92
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Oct 21 22:55:02 2010 +0200
+
+ dri2: Add sync-to-vblank support.
+
+ Note that you need a recent enough kernel for it to work. Use the
+ "GLXVBlank" option to enable it (it defaults to disabled for now).
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 72dd4899ff036b09e3680ed2e09b3dbae3a7ba71
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Oct 21 22:31:45 2010 +0200
+
+ nv04-nv40/exa: Make the copy hook blit downwards for non-overlapping regions.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 21ed642d3f76f286f23cd64ca817038ec94a1bf6
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Wed Oct 13 18:22:22 2010 +0200
+
+ Make the sync-to-vblank helpers more consistent.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 258e483d47f0f63155be18981c1118261f7675a8
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Oct 21 22:41:24 2010 +0200
+
+ kms: Register a wakeup handler to poll vblank/pageflip/udev events.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 4f42708c26fa57bac7854701a6e757958c8d0654
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Sun Oct 10 04:39:27 2010 +0200
+
+ Update to the last libdrm API.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 8c8f15c9d3a31c35bf2ef20faf8c4133295a678f
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Sun Oct 10 04:36:17 2010 +0200
+
+ nv10-nv40/exa: Fix tiled pixmap pitch alignment calculation.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit a47c274f329b3b8bfbdcf155d6d832599d823dc8
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Sun Oct 10 04:43:25 2010 +0200
+
+ Fix for the last xserver ABI.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit 9a5142fae6e1a0a470352f511427916e6fa01b9c
+Author: Maarten Maathuis <madman2003@gmail.com>
+Date: Fri Aug 27 21:11:59 2010 +0200
+
+ nv50/exa: Stop using wfb by default, but add an option to enable it.
+
+ - Some scenarios, such as those heavy in core font rendering might prefer wfb.
+ - Other (modern) situations are better of with wfb disabled.
+
+ Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
+
+commit d5a6f103113985c50bbe749ed341de34af1b47a5
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Tue Sep 28 21:49:48 2010 +0200
+
+ dri2: Throttle frontbuffer flushes.
+
+ There was no need for throttling until the hardware interchannel sync
+ kernel changes because the pushbuf IOCTL blocked to sync the GL and X
+ channels anyway.
+
+ Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit f1ac413d1d3dec2ccf63d4a8c79b9bd9ea578dcf
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Mon Sep 20 08:05:00 2010 +1000
+
+ nv50: use 0x8697 on NVAF
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 14c93acfc3fde04415e1c6a2a056465d15c86315
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Fri Sep 17 13:17:37 2010 +1000
+
+ noaccel: fix rotation, as well as an assert during server shutdown
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 065576d5df0df4da61050d789f548801656b62d5
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Thu Aug 26 13:22:33 2010 +1000
+
+ dri2: remove explit flush from copy_region()
+
+ Unnecessary now that we kickoff from within the flush callback chain.
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 34025f0dc9284873d4bf7e4f547ed69fc562a3c9
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Thu Aug 26 13:19:39 2010 +1000
+
+ kickoff from the flush callback chain
+
+ This is a port of intel commit: 69d65f9184006eac790efcff78a0e425160e95aa
+
+ Submit batch buffers from flush callback chain
+
+ There are a few cases where the server will flush client output buffers
+ but our block handler only catches the most common (before going into select
+ If the server flushes client buffers before we submit our batch buffer,
+ the client may receive a damage event for rendering that hasn't happened yet
+
+ Instead, we can hook into the flush callback chain, which the server will
+ invoke just before flushing output. This lets us submit batch buffers
+ before sending out events, preserving ordering.
+
+ Fixes 28438: [bisected] incorrect character in gnome-terminal under compiz
+ https://bugs.freedesktop.org/show_bug.cgi?id=28438
+
+ Signed-off-by: Kristian Høgsberg <krh@bitplanet.net>
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 390f1c86d9583f4ceabd407ee47410073c2a1b55
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Fri Aug 20 09:48:32 2010 +1000
+
+ nv50/xv: support UYVY
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 00d390952c912d4e9fc2c962caaeb90bf563d5b1
+Author: Maarten Maathuis <madman2003@gmail.com>
+Date: Fri Aug 13 22:24:26 2010 +0200
+
+ nv50/xv: Fix the uncommon codepath to use width/height variable.
+
+ - The common codepath should be the correct one, because that is
+ triggered often, while the other is rare.
+ - This isn't neccesarily a problem, but let's be on the safe side.
+
+ Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
+
+commit f5b486dd237679aec1987985f9ecffc6a4fd3105
+Author: Maarten Maathuis <madman2003@gmail.com>
+Date: Fri Aug 13 22:16:51 2010 +0200
+
+ nv50/xv: We have 18 relocs, not 16, adjust MARK_RING.
+
+ Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
+
+commit 1cb6c91a9afe88d73f8a1180b00f56a9150a16ed
+Author: Roy Spliet <r.spliet@student.tudelft.nl>
+Date: Sat Aug 7 20:59:06 2010 +0200
+
+ nouveau_exa.c: move line_count logic out of UTS/DFS loop
+
+ Signed-off-by: Roy Spliet <r.spliet@student.tudelft.nl>
+ Signed-off-by: Maarten Maathuis <madman2003@gmail.com>
+
+commit 9f50b62229d5984ee5c16bc54953c7f8e2d5e575
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Fri Aug 6 08:28:34 2010 +1000
+
+ nvc0: recognise these chipsets, and allow NoAccel mode on them
+
+ Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit b96170a4e51c1d3167601210ca31e98283c02885
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Thu Aug 5 00:40:40 2010 +0200
+
+ nv10/exa: Bump maxX/maxY to 4096/4096.
+
+ This way we can do accelerated 2D on larger pixmaps, it will still
+ fall back to software when we hit the 2048x2048 texturing limit in a
+ composite operation.
+
+commit 321eb2df5c8b1da4d6469037dd1d8888b508fabd
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Wed Aug 4 13:11:24 2010 +0200
+
+ Revert "nv04-nv40/exa: Match the blob behavior more closely on PrepareCopy."
+
+ This reverts commit 9de0d97bd2fc2ee8800d48b5340a3d495525ad3e. Unnecessary
+ after kernel commit "drm/nouveau: Ack the context switch interrupt before
+ switching contexts.".
+
+commit db98ad23633958e52f84501c5a2061d42d346b64
+Author: Francisco Jerez <currojerez@riseup.net>
+Date: Tue Jun 15 15:32:36 2010 +0200
+
+ dri2: Fix for the last DRI2InfoRec ABI.
+
+ Just pre-fill the whole structure with zeros to avoid future
+ segfaults.
+
+commit 9a3d0ab43f6335ab6cd48be4aa2f4f728386b386
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Fri Jun 11 21:58:38 2010 +1000
+
+ call NVEnterVT from CreateScreenResources
+
+ We need to grab DRM master here for things to work, so we may as well call
+ NVEnterVT as we used to in NVScreenInit up until the previous commit.
+
+ Fixes server regeneration.
+
+commit 964eeac6dc2209da6aa8861aa8b0bc028700ab3d
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Thu Jun 10 09:38:19 2010 +1000
+
+ fix for server 1.9
+
+commit c079408e287ad09e954fa3985f95912c02cf06bc
+Author: Christoph Bumiller <e0425955@student.tuwien.ac.at>
+Date: Thu Jun 10 01:07:49 2010 +0200
+
+ nv50/accel: fix perspective interps in YUV to RGB shader
+
+commit 65153490f7d74d45a92adbd9c5e2bbe11c884b00
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Wed Jun 9 16:12:28 2010 +1000
+
+ use libc directly for [cm]alloc/free
+
+commit 2958cf464dca9761f0fa21c8dd2d8fa8c8a96791
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Thu May 27 10:06:47 2010 +1000
+
+ nv50/exa: rip out compat defines, we depend on 1.7 anyway
+
+commit af40bf0af47ebcb7de2dc418429f0b56f8c04d15
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Wed May 26 16:11:01 2010 +1000
+
+ nv50/exa: new nouveau_class.h has correct blend func defines
+
+commit 8950c5b2a0d318e2568bec38a39d744b968c9b85
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date: Wed May 26 16:09:48 2010 +1000
+
+ update nouveau_class.h
+
+commit b9f414c589d89887722942463bcbf5f85191e71a
+Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
+Date: Tue May 18 18:36:33 2010 +1000
+
+ Imported Upstream version 0.0.15+git20100518+4b8f1a0
+
+commit 429576639e3d463e821505eaf45c6a2ec764b456
+Merge: 9dc12f0 4b8f1a0
+Author: Christopher James Halse Rogers <raof@ubuntu.com>
+Date: Tue May 18 16:08:22 2010 +1000
+
+ Merge remote branch 'upstream/master' into upstream-ubuntu
+
commit 4b8f1a082069a17555d4142003213cf83d4e5464
Author: Lubomir Rintel <lkundrak@v3.sk>
Date: Mon May 10 09:25:55 2010 +0200
@@ -116,6 +597,19 @@ Date: Tue Feb 23 15:03:38 2010 +1000
Add connector name for eDP
+commit 9dc12f0de18594c12301535bf89590671ef463f6
+Author: Christopher James Halse Rogers <raof@ubuntu.com>
+Date: Fri Feb 19 20:33:58 2010 +1100
+
+ Imported Upstream version 0.0.15+git+20100219+9b4118d
+
+commit 9f2672351b2028ac78edaeadf012f968ae237f08
+Merge: d4fd2c0 9b4118d
+Author: Christopher James Halse Rogers <raof@ubuntu.com>
+Date: Fri Feb 19 20:20:45 2010 +1100
+
+ Merge remote branch 'upstream/master' into upstream-ubuntu
+
commit 29647021044463768cbfa3eead1416ef1cf27fa1
Author: Ben Skeggs <bskeggs@redhat.com>
Date: Thu Feb 18 14:17:57 2010 +1000
@@ -229,6 +723,42 @@ Date: Sun Jan 31 17:43:54 2010 +0100
Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+commit d4fd2c0762967c985e219e16914ae63fea2a5718
+Author: Christopher James Halse Rogers <raof@ubuntu.com>
+Date: Thu Jan 28 11:52:46 2010 +1100
+
+ Imported Upstream version 0.0.10~git+20100128+2630a15
+
+commit b08689b2ed227df98429b9926276e78f791357b6
+Merge: 4162e08 2630a15
+Author: Christopher James Halse Rogers <raof@ubuntu.com>
+Date: Thu Jan 28 10:45:16 2010 +1100
+
+ Merge remote branch 'upstream/master' into upstream-ubuntu
+
+ * upstream/master: (31 commits)
+ Remove nv_dripriv.h, nv_local.h
+ xv: use nouveau_bo_new_tile()
+ Remove deprecated NV1 readme
+ exa: remove nouveau_pixmap_offset()
+ exa: remove nouveau_exa_pixmap_{map,unmap}
+ Check for drm+kms availability in NVPciProbe()
+ bump xorg-server requirement to 1.7
+ remove more unused code
+ exa: Remove non-driver pixmaps path
+ Remove pNv->NVArch
+ Remove pNv->Chipset use
+ remove pNv->VRAMPhysical
+ dri1: remove DRI1 support
+ xv: ifdef out another problematic piece of overlay support for the moment
+ Initial pass at removal of non-KMS support.
+ exa: Some compat defines for new pixman formats.
+ start using BEGIN_RING_NI
+ nv50: always set semaphore handle and offset
+ nv50: upgrade nv50_texture.h
+ nv50/exa: add support for more color formats
+ ...
+
commit 2630a1553d560ce2c7391bc103d4a543f7d3d0da
Author: Marcin Kościelnicki <koriakin@0x04.net>
Date: Wed Jan 20 07:46:32 2010 +0000
@@ -493,6 +1023,12 @@ Date: Mon Dec 7 15:31:53 2009 +1000
work actually, but that's not confirmed) rejects a GART DMA object, so the
usefulness is a bit more limited than I'd hoped.
+commit 4162e080f2922f8aac0606b216990666b1f6e006
+Author: Christopher James Halse Rogers <raof@ubuntu.com>
+Date: Mon Dec 7 13:11:46 2009 +1100
+
+ Imported Upstream version 0.0.10+git20091207+60a3942
+
commit 60a394222b410da8bb832935fc525132218b4d94
Author: Ben Skeggs <bskeggs@redhat.com>
Date: Thu Dec 3 21:14:00 2009 +1000
commit b795ca6e97fae9735843748585401098dae1c3e1
Author: Ben Skeggs <bskeggs@redhat.com>
Date: Fri Jan 7 13:33:36 2011 +1000
nv50: fix pitch of linear scanout buffers
Un-breaks NoAccel on these chipsets.
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
diff --git a/src/nv_accel_common.c b/src/nv_accel_common.c
index b1553f6..dc7215e 100644
--- a/src/nv_accel_common.c
+++ b/src/nv_accel_common.c
@@ -32,13 +32,26 @@ nouveau_allocate_surface(ScrnInfoPtr scrn, int width, int height, int bpp,
Bool tiled = (usage_hint & NOUVEAU_CREATE_PIXMAP_TILED);
int tile_mode = 0, tile_flags = 0;
int flags = NOUVEAU_BO_MAP | (bpp >= 8 ? NOUVEAU_BO_VRAM : 0);
- int ret;
-
- if ((scanout && pNv->tiled_scanout) ||
- (!scanout && pNv->Architecture >= NV_ARCH_50 && bpp >= 8))
- tiled = TRUE;
-
- *pitch = NOUVEAU_ALIGN(width * bpp, 512) / 8;
+ int cpp = bpp / 8, ret;
+
+ if (pNv->Architecture >= NV_ARCH_50) {
+ if (scanout) {
+ if (pNv->tiled_scanout) {
Reply to: