xserver-xorg-video-nouveau: Changes to 'ubuntu-jaunty'
.gitignore | 1 -
debian/changelog | 7 ++++++-
debian/patches/01_include_snapshot_date | 12 +++++++-----
debian/rules | 4 ++--
src/drmmode_display.c | 5 +++--
src/nv50_randr.c | 8 ++++++++
src/nv50_xv.c | 10 +++++-----
src/nv_crtc.c | 2 +-
src/nv_driver.c | 4 ++++
9 files changed, 36 insertions(+), 17 deletions(-)
New commits:
commit cb41865b5da97bb791c472fec7a882ee68ee1d26
Author: Christopher James Halse Rogers <chris@CowboyLaputopu.(none)>
Date: Sun Mar 29 10:43:02 2009 +1100
Revert "Add stampdir to .gitignore, so git-buildpackage stops having screaming hissy fits"
This is no longer necessary, now that we remove stampdir on clean.
This reverts commit 0190d14466eebdddfc6389d4f4bab9756d5cf720.
diff --git a/.gitignore b/.gitignore
index 5636e09..4ff1108 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,4 +20,3 @@ ltmain.sh
missing
stamp-h1
ChangeLog
-stampdir
\ No newline at end of file
commit 4d94cb3eea8b388dba4771554086afe919c567ce
Author: Christopher James Halse Rogers <chris@CowboyLaputopu.(none)>
Date: Sun Mar 29 10:42:22 2009 +1100
Add LP magic to changelog, mention remove-stampdir-on-clean
diff --git a/debian/changelog b/debian/changelog
index dd0ddfa..202147f 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,11 +1,15 @@
xserver-xorg-video-nouveau (1:0.0.10~git+20090327+f1907dc-0ubuntu1) jaunty; urgency=low
- * New upstream snapshot
+ * New upstream snapshot. Standing FFe is (LP: #346621).
+ - New snapshot fixes crash in NoAccel code path (LP: #345530)
+ - New snapshot fixes incorrect resolution after exit from some
+ fullscreen applications, such as Battle for Westnoth (LP: #323619)
- f1907dc... nv50: add default modes to mode pool for LVDS panel
- 7da6fdb... kms: fix bug which prevented getting edid from the kernel
- f431e20... randr: fix crash when rotation requested
- 36dedd0... kms: check for mm_enabled as an additional test for kms
presence
+ - a923bc1... nv50/xv: correct rendering to partically obscured windows
- 01cee29... nv50: call NVSync() in CloseScreen() before restoring
video mode
- aa7c037... kms: implement AdjustFrame, should fix crash in fdo#24236
@@ -161,6 +165,7 @@ xserver-xorg-video-nouveau (1:0.0.10~git+20090327+f1907dc-0ubuntu1) jaunty; urge
- ba1f897... keep resources around after leavevt, far too problematic
currently
* debian/rules
+ + Remove stampdir/ on clean; fixes build-twice-in-a-row.
* debian/patches/01_include_snapshot_date
+ Generate snapshot-date in get-orig-source, and use it rather than
git log to define NV_DRIVER_DATE
commit b23730da621e51258de51678a72be6d24f2e3b88
Author: Christopher James Halse Rogers <chris@CowboyLaputopu.(none)>
Date: Sun Mar 29 10:31:26 2009 +1100
Use just xsfbs.mk's quilt patch target, and remove stampdir/ on clean
diff --git a/debian/rules b/debian/rules
index 3240999..89c01c4 100755
--- a/debian/rules
+++ b/debian/rules
@@ -1,7 +1,6 @@
#!/usr/bin/make -f
-include /usr/share/quilt/quilt.make
--include debian/xsfbs/xsfbs.mk
+include debian/xsfbs/xsfbs.mk
CFLAGS = -Wall -g
ifneq (,$(findstring noopt,$(DEB_BUILD_OPTIONS)))
@@ -59,6 +58,7 @@ clean: unpatch
rm -f conftest* */conftest*
rm -rf autom4te.cache */autom4te.cache
rm -rf obj-*
+ rm -rf stampdir
dh_clean
commit 45edf7d77f62685d4f59a6e14ba77632080130c9
Author: Christopher James Halse Rogers <chris@CowboyLaputopu.(none)>
Date: Sun Mar 29 10:00:16 2009 +1100
Fix path to snapshot-date in configure patch.
We call configure from $(srcdir)/$ARCH-TRIPLE, so snapshot-date is in $(pwd)/..
diff --git a/debian/patches/01_include_snapshot_date b/debian/patches/01_include_snapshot_date
index 7821f17..76fb0c0 100644
--- a/debian/patches/01_include_snapshot_date
+++ b/debian/patches/01_include_snapshot_date
@@ -1,13 +1,15 @@
Index: xserver-xorg-video-nouveau/configure
===================================================================
---- xserver-xorg-video-nouveau.orig/configure 2009-03-27 19:14:01.435615848 +1100
-+++ xserver-xorg-video-nouveau/configure 2009-03-27 19:14:27.175615987 +1100
-@@ -2084,7 +2084,7 @@
-
+--- xserver-xorg-video-nouveau.orig/configure 2009-03-29 09:44:13.292677296 +1100
++++ xserver-xorg-video-nouveau/configure 2009-03-29 09:58:42.032677435 +1100
+@@ -2082,9 +2082,8 @@
+ #define NV_PATCHLEVEL $(echo $PACKAGE_VERSION | sed -e 's/^[0-9]\.[0-9]\.\([0-9]\)/\1/')
+ _ACEOF
+-
cat >>confdefs.h <<_ACEOF
-#define NV_DRIVER_DATE $(echo -n \";git log |head -3|tail -1|tr -d '\n';echo -n \")
-+#define NV_DRIVER_DATE $(echo -n \";cat snapshot-date;echo -n \")
++#define NV_DRIVER_DATE $(echo -n \";cat ../snapshot-date;echo -n \")
_ACEOF
commit f1907dcef8d06d7ee4ef10ba22bb7decef700110
Author: Ben Skeggs <skeggsb@gmail.com>
Date: Fri Mar 27 15:37:17 2009 +1000
nv50: add default modes to mode pool for LVDS panel
At some point X stopped doing this if the display doesn't support
continuous timing. For a lot of G80 LVDS panels, they only report
their native mode via DDC.
We'll add the default modes ourself, and use the GPU scalers.
diff --git a/src/nv50_randr.c b/src/nv50_randr.c
index aad84f4..6399c98 100644
--- a/src/nv50_randr.c
+++ b/src/nv50_randr.c
@@ -507,6 +507,7 @@ nv50_output_get_modes(xf86OutputPtr output)
xf86OutputSetEDID(output, ddc_mon);
DisplayModePtr ddc_modes = connector->GetDDCModes(connector);
+ DisplayModePtr default_modes = NULL;
xf86DeleteMode(&nv_output->output->native_mode, nv_output->output->native_mode);
nv_output->output->native_mode = NULL;
@@ -567,6 +568,13 @@ nv50_output_get_modes(xf86OutputPtr output)
if (nv_output->output->crtc)
nv_output->output->crtc->native_mode = nv_output->output->native_mode;
+ if (nv_output->output->type == OUTPUT_LVDS &&
+ (!ddc_mon ||!GTF_SUPPORTED(ddc_mon->features.msc))) {
+ default_modes = xf86GetDefaultModes(output->interlaceAllowed,
+ output->doubleScanAllowed);
+ }
+
+ xf86ModesAdd(ddc_modes, default_modes);
return ddc_modes;
}
commit 7da6fdb8b477d2007c83b47e9cbcc2476ae40f22
Author: Ben Skeggs <skeggsb@gmail.com>
Date: Fri Mar 27 14:17:29 2009 +1000
kms: fix bug which prevented getting edid from the kernel
diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 7341392..8714cad 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -576,8 +576,9 @@ drmmode_output_get_modes(xf86OutputPtr output)
if (!props || !(props->flags & DRM_MODE_PROP_BLOB))
continue;
- if (!strcmp(props->name, "EDID") && drmmode_output->edid_blob) {
- drmModeFreePropertyBlob(drmmode_output->edid_blob);
+ if (!strcmp(props->name, "EDID")) {
+ if (drmmode_output->edid_blob)
+ drmModeFreePropertyBlob(drmmode_output->edid_blob);
drmmode_output->edid_blob =
drmModeGetPropertyBlob(drmmode->fd,
koutput->prop_values[i]);
commit f431e204d3a9be92df5ca606e86ed7c6d82103f0
Author: Ben Skeggs <skeggsb@gmail.com>
Date: Fri Mar 27 11:50:22 2009 +1000
randr: fix crash when rotation requested
diff --git a/src/nv_crtc.c b/src/nv_crtc.c
index 43bc531..c70d4d3 100644
--- a/src/nv_crtc.c
+++ b/src/nv_crtc.c
@@ -1052,7 +1052,7 @@ nv_crtc_shadow_allocate (xf86CrtcPtr crtc, int width, int height)
"Couldn't allocate shadow memory for rotated CRTC.\n");
return NULL;
}
- offset = pNv->FB->map + nv_crtc->shadow->offset;
+ offset = pNv->FBMap + nv_crtc->shadow->offset;
#endif /* NOUVEAU_EXA_PIXMAPS */
return offset;
commit 36dedd04da1b3c89be61a95270414477d284b2ef
Author: Ben Skeggs <skeggsb@gmail.com>
Date: Fri Mar 27 11:26:09 2009 +1000
kms: check for mm_enabled as an additional test for kms presence
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 220a88e..4f07836 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -962,6 +962,10 @@ NVPreInitDRM(ScrnInfoPtr pScrn)
*/
#ifdef XF86DRM_MODE
pNv->kms_enable = !drmCheckModesettingSupported(bus_id);
+
+ /* Additional sanity check */
+ if (!nouveau_device(pNv->dev)->mm_enabled)
+ pNv->kms_enable = false;
#endif
xf86DrvMsg(pScrn->scrnIndex, X_PROBED,
"[drm] kernel modesetting %s\n", pNv->kms_enable ?
commit a923bc1e4840c0386301f8648add2ccbfbf79a88
Author: Ben Skeggs <skeggsb@gmail.com>
Date: Thu Mar 26 16:24:01 2009 +1000
nv50/xv: correct rendering to partically obscured windows
Won't be exposed by current git, due to lack of accelerated front-buffer
rendering. But should fix rh#492173, rh#492229.
diff --git a/src/nv50_xv.c b/src/nv50_xv.c
index 5741cbd..9601326 100644
--- a/src/nv50_xv.c
+++ b/src/nv50_xv.c
@@ -225,7 +225,7 @@ nv50_xv_image_put(ScrnInfoPtr pScrn,
if (!nv50_xv_check_image_put(ppix))
return BadMatch;
- nv50_xv_state_emit(ppix, id, src, packed_y, uv, src_w, src_h);
+ nv50_xv_state_emit(ppix, id, src, packed_y, uv, width, height);
/* These are fixed point values in the 16.16 format. */
X1 = (float)(x1>>16)+(float)(x1&0xFFFF)/(float)0x10000;
@@ -245,10 +245,10 @@ nv50_xv_image_put(ScrnInfoPtr pScrn,
int sy1=pbox->y1;
int sy2=pbox->y2;
- tx1 = tx1 / src_w;
- tx2 = tx2 / src_w;
- ty1 = ty1 / src_h;
- ty2 = ty2 / src_h;
+ tx1 = tx1 / width;
+ tx2 = tx2 / width;
+ ty1 = ty1 / height;
+ ty2 = ty2 / height;
if (AVAIL_RING(chan) < 64) {
nv50_xv_state_emit(ppix, id, src, packed_y, uv,
Reply to: