[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

xserver-xorg-video-nouveau: Changes to 'debian-unstable'



 ChangeLog             |   68 ++++++++++++++++++++++++++++++++++++++++++++++++++
 debian/README.Debian  |   20 ++++++++------
 debian/changelog      |   12 ++++++++
 debian/control        |    4 +-
 src/drmmode_display.c |   18 ++++++++++---
 src/nouveau_dri2.c    |    3 --
 src/nv_driver.c       |    2 +
 src/nvc0_accel.c      |   14 ----------
 src/vl_hwmc.c         |   37 +++++++++++++++++++++------
 9 files changed, 140 insertions(+), 38 deletions(-)

New commits:
commit 516eb740ad0f1396f4a4070d291a04c3e1fdabd0
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Sat Sep 10 17:50:22 2011 +0200

    Linux 3.1 includes free firmware for (some) Fermi cards

diff --git a/debian/README.Debian b/debian/README.Debian
index 125c73d..8b4c729 100644
--- a/debian/README.Debian
+++ b/debian/README.Debian
@@ -12,8 +12,9 @@ Staging drivers.
 
 Fermi cards (GeForce 4xx/5xx series, NVC0 in Nouveau terminology)
 currently need non-free and not readily available firmware to provide
-any acceleration. At http://nouveau.freedesktop.org/wiki/NVC0_Firmware
-you can find intructions how to extract it from the blob.
+any acceleration, though this will change starting with Linux 3.1.
+Please check the status at
+http://nouveau.freedesktop.org/wiki/InstallDRM#Firmware.
 
 
 Incompatibilities with other drivers
@@ -77,4 +78,4 @@ http://nouveau.freedesktop.org/wiki/FAQ
 http://nouveau.freedesktop.org/wiki/TroubleShooting
 http://nouveau.freedesktop.org/wiki/KernelModeSetting
 
- -- Sven Joachim <svenjoac@gmx.de>, Sat, 10 Sep 2011 17:01:17 +0200
+ -- Sven Joachim <svenjoac@gmx.de>, Sat, 10 Sep 2011 17:46:55 +0200
diff --git a/debian/changelog b/debian/changelog
index ae71a10..99ec81c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -6,6 +6,7 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110823+169512f-1) unstable; urgency=lo
   * Update README.Debian:
     - No need to uninstall nvidia-glx anymore, you can select the mesa
       alternative with "update-alternatives --config glx".
+    - Linux 3.1 includes free firmware for some Fermi cards.
 
  -- Sven Joachim <svenjoac@gmx.de>  Sat, 10 Sep 2011 14:23:00 +0200
 

commit d04715e5678517f3cf1b175b75d338060354049e
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Sat Sep 10 17:06:01 2011 +0200

    Update README.Debian for the new layout of nvidia packages
    
    If I understand their mess of diversions and alternatives correctly,
    running "update-alternatives --config glx" lets you choose a provider
    for the libglx.so and libGL.so.1 files.  Note that I could not really
    test this, because nvidia-glx is currently uninstallable.

diff --git a/debian/README.Debian b/debian/README.Debian
index c577195..125c73d 100644
--- a/debian/README.Debian
+++ b/debian/README.Debian
@@ -36,12 +36,13 @@ Interferences of the Nvidia OpenGL implementation
 
 The proprietary Nvidia driver comes with its own OpenGL implementation
 that is incompatible with free drivers.  To be able to use OpenGL
-programs with nouveau, you need to uninstall the Nvidia files.  If you
-have used the nvidia-glx package or any of its legacy variants, it
-suffices to remove the libgl1-nvidia-alternatives and
-libglx-nvidia-alternatives packages.  If you ran the Nvidia installer,
-you need to reinstall the xserver-xorg-core and libgl1-mesa-glx
-packages.  In either case, restarting X is also necessary.
+programs with nouveau, you need to replace the Nvidia files.  If you
+have used the nvidia-glx package or any of its legacy variants, run
+"update-alternatives --config glx" and select /usr/lib/mesa-diverted,
+or remove the glx-diversions package and its reverse dependencies.  If
+you ran the Nvidia installer, you may need to reinstall the
+xserver-xorg-core and libgl1-mesa-glx packages.  In either case,
+restarting X is also necessary.
 
 A simple OpenGL test program is glxgears, contained in the mesa-utils
 package.  Note that OpenGL with nouveau will not be much fun, see the
@@ -76,4 +77,4 @@ http://nouveau.freedesktop.org/wiki/FAQ
 http://nouveau.freedesktop.org/wiki/TroubleShooting
 http://nouveau.freedesktop.org/wiki/KernelModeSetting
 
- -- Sven Joachim <svenjoac@gmx.de>, Sat,  5 Mar 2011 11:13:05 +0100
+ -- Sven Joachim <svenjoac@gmx.de>, Sat, 10 Sep 2011 17:01:17 +0200
diff --git a/debian/changelog b/debian/changelog
index 31fa924..ae71a10 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -3,6 +3,9 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110823+169512f-1) unstable; urgency=lo
   * New upstream snapshot.
   * Bump Standards-Version to 3.9.2, no changes needed.
   * Don't claim that the driver is experimental in the description.
+  * Update README.Debian:
+    - No need to uninstall nvidia-glx anymore, you can select the mesa
+      alternative with "update-alternatives --config glx".
 
  -- Sven Joachim <svenjoac@gmx.de>  Sat, 10 Sep 2011 14:23:00 +0200
 

commit b232058332ae80596cced01d910065d83ad7ec6e
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Sat Sep 10 16:22:09 2011 +0200

    Don't claim that the nouveau driver is experimental

diff --git a/debian/changelog b/debian/changelog
index def34cb..31fa924 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -2,6 +2,7 @@ xserver-xorg-video-nouveau (1:0.0.16+git20110823+169512f-1) unstable; urgency=lo
 
   * New upstream snapshot.
   * Bump Standards-Version to 3.9.2, no changes needed.
+  * Don't claim that the driver is experimental in the description.
 
  -- Sven Joachim <svenjoac@gmx.de>  Sat, 10 Sep 2011 14:23:00 +0200
 
diff --git a/debian/control b/debian/control
index 2eb512b..f63abe2 100644
--- a/debian/control
+++ b/debian/control
@@ -35,7 +35,7 @@ Depends:
  ${misc:Depends},
  ${xviddriver:Depends},
 Provides: ${xviddriver:Provides}
-Description: X.Org X server -- Nouveau display driver (experimental)
+Description: X.Org X server -- Nouveau display driver
  This driver for the X.Org X server (see xserver-xorg for a further description)
  provides support for NVIDIA Riva, TNT, GeForce, and Quadro cards.
  .

commit 819f06976d80b6d6fd7e954a72c01a293988b22a
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Sat Sep 10 14:29:00 2011 +0200

    Bump Standards-Version to 3.9.2

diff --git a/debian/changelog b/debian/changelog
index 6352c39..def34cb 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 xserver-xorg-video-nouveau (1:0.0.16+git20110823+169512f-1) unstable; urgency=low
 
   * New upstream snapshot.
+  * Bump Standards-Version to 3.9.2, no changes needed.
 
  -- Sven Joachim <svenjoac@gmx.de>  Sat, 10 Sep 2011 14:23:00 +0200
 
diff --git a/debian/control b/debian/control
index b157e80..2eb512b 100644
--- a/debian/control
+++ b/debian/control
@@ -23,7 +23,7 @@ Build-Depends:
  libtool,
  xutils-dev,
  quilt,
-Standards-Version: 3.9.1
+Standards-Version: 3.9.2
 Homepage: http://nouveau.freedesktop.org/wiki/
 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-nouveau
 Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-nouveau.git

commit e0639495c5d4f4ad249a32aeb8d6bf67d667ce73
Author: Sven Joachim <svenjoac@gmx.de>
Date:   Sat Sep 10 14:23:36 2011 +0200

    New upstream snapshot

diff --git a/ChangeLog b/ChangeLog
index 8adf9ea..69ce90c 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,71 @@
+commit 169512fbe91f0671a90dfee5e280357f0a4ef701
+Author: Maxim Levitsky <maximlevitsky@gmail.com>
+Date:   Tue Aug 23 13:10:59 2011 +0200
+
+    dri2: Disable the "exchange" swapbuffers path for the moment (bug 35930).
+    
+    Allow page flipping only for scanout buffer for now as simple swapping
+    between off-screen pixmaps confuses compiz because there is no
+    syncronization method to tell it about that swap
+    
+    Signed-off-by: Francisco Jerez <currojerez@riseup.net>
+
+commit b806e3f97a73701f057c45b1f45233e69e19f113
+Author: Bryan Cain <bryancain3@gmail.com>
+Date:   Wed Jul 20 13:48:36 2011 -0500
+
+    g3dvl: update for compatibility with latest pipe-video branch in Mesa
+    
+    Signed-off-by: Bryan Cain <bryancain3@gmail.com>
+    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit de9d1ba7efeba64f319efa00df183d3cb78f24af
+Author: Emil Velikov <emil.l.velikov@gmail.com>
+Date:   Tue Jul 19 00:35:38 2011 +0100
+
+    drmmode_display: Resolve missing brackets
+    
+    Correct some missing/misplaced brackets in drmmode_pre_init()
+    The issue was exposed when trying a 4 monitor desktop using two
+    cards/gpus
+    
+    Resolves https://bugs.freedesktop.org/show_bug.cgi?id=39099
+    
+    Reported-By: Damian Nowak <nowaker@geozone.pl>
+    Tested-By: Damian Nowak <nowaker@geozone.pl>
+    Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
+    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit ef4957492956df54fafa6c75d576a07ce678ea0a
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date:   Mon Jul 11 12:48:34 2011 +1000
+
+    kms: fix multiple rotations in noaccel mode
+
+commit ab89aa022f0c78154e525b5f5787feee8024171f
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date:   Fri Jun 17 10:10:09 2011 +1000
+
+    nvc0: accept 0xdx chipsets
+    
+    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 7dd8987b8b69f56d04a199207122d2e51b9caa6e
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date:   Fri Jun 17 10:07:36 2011 +1000
+
+    nvc0: assume 0x9097's presence on all chipsets
+    
+    This appears to be the case thus far, and is what the 3D driver does.
+    
+    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
+
+commit 98ee2105dbd8685e59c1967a587fccb6135743ac
+Author: Ben Skeggs <bskeggs@redhat.com>
+Date:   Mon May 30 10:10:58 2011 +1000
+
+    kms: clear new fb to black on fb resize
+
 commit 8378443bd3b26b57ef2ae424a700e01ead813d33
 Author: Ben Skeggs <bskeggs@redhat.com>
 Date:   Thu Mar 24 02:13:12 2011 +1000
diff --git a/debian/changelog b/debian/changelog
index f4cc17b..6352c39 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+xserver-xorg-video-nouveau (1:0.0.16+git20110823+169512f-1) unstable; urgency=low
+
+  * New upstream snapshot.
+
+ -- Sven Joachim <svenjoac@gmx.de>  Sat, 10 Sep 2011 14:23:00 +0200
+
 xserver-xorg-video-nouveau (1:0.0.16+git20110411+8378443-1) unstable; urgency=low
 
   [ Sven Joachim ]

commit 169512fbe91f0671a90dfee5e280357f0a4ef701
Author: Maxim Levitsky <maximlevitsky@gmail.com>
Date:   Tue Aug 23 13:10:59 2011 +0200

    dri2: Disable the "exchange" swapbuffers path for the moment (bug 35930).
    
    Allow page flipping only for scanout buffer for now as simple swapping
    between off-screen pixmaps confuses compiz because there is no
    syncronization method to tell it about that swap
    
    Signed-off-by: Francisco Jerez <currojerez@riseup.net>

diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c
index 1a68ed3..2081ce2 100644
--- a/src/nouveau_dri2.c
+++ b/src/nouveau_dri2.c
@@ -153,8 +153,7 @@ can_exchange(DrawablePtr draw, PixmapPtr dst_pix, PixmapPtr src_pix)
 
 	}
 
-	return (!nouveau_exa_pixmap_is_onscreen(dst_pix) ||
-		(DRI2CanFlip(draw) && pNv->has_pageflip)) &&
+	return ((DRI2CanFlip(draw) && pNv->has_pageflip)) &&
 		dst_pix->drawable.width == src_pix->drawable.width &&
 		dst_pix->drawable.height == src_pix->drawable.height &&
 		dst_pix->drawable.depth == src_pix->drawable.depth &&

commit b806e3f97a73701f057c45b1f45233e69e19f113
Author: Bryan Cain <bryancain3@gmail.com>
Date:   Wed Jul 20 13:48:36 2011 -0500

    g3dvl: update for compatibility with latest pipe-video branch in Mesa
    
    Signed-off-by: Bryan Cain <bryancain3@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

diff --git a/src/vl_hwmc.c b/src/vl_hwmc.c
index d8d8860..6e9e0c7 100644
--- a/src/vl_hwmc.c
+++ b/src/vl_hwmc.c
@@ -35,12 +35,14 @@
 
 static int subpicture_index_list[] =
 {
-	FOURCC_RGB
+	FOURCC_RGB,
+	FOURCC_IA44,
+	FOURCC_AI44
 };
 
 static XF86MCImageIDList subpicture_list =
 {
-	1,
+	3,
 	subpicture_index_list
 };
 
@@ -53,29 +55,48 @@ static XF86MCSurfaceInfoRec yv12_mpeg2_surface =
 	2048,
 	2048,
 	2048,
-	/*XVMC_IDCT*/ XVMC_MOCOMP | XVMC_MPEG_2,
-	XVMC_INTRA_UNSIGNED | XVMC_SUBPICTURE_INDEPENDENT_SCALING | XVMC_BACKEND_SUBPICTURE,
+	XVMC_IDCT | XVMC_MOCOMP | XVMC_MPEG_2,
+	XVMC_SUBPICTURE_INDEPENDENT_SCALING | XVMC_BACKEND_SUBPICTURE,
+	&subpicture_list
+};
+
+static XF86MCSurfaceInfoRec uyvy_mpeg2_surface =
+{
+	FOURCC_UYVY,
+	XVMC_CHROMA_FORMAT_422,
+	0,
+	2048,
+	2048,
+	2048,
+	2048,
+	XVMC_IDCT | XVMC_MOCOMP | XVMC_MPEG_2,
+	XVMC_SUBPICTURE_INDEPENDENT_SCALING | XVMC_BACKEND_SUBPICTURE,
 	&subpicture_list
 };
 
 static XF86MCSurfaceInfoPtr surfaces[] =
 {
-	(XF86MCSurfaceInfoPtr)&yv12_mpeg2_surface
+	(XF86MCSurfaceInfoPtr)&yv12_mpeg2_surface,
+	(XF86MCSurfaceInfoPtr)&uyvy_mpeg2_surface
 };
 
 static XF86ImageRec rgb_subpicture = XVIMAGE_RGB;
+static XF86ImageRec ia44_subpicture = XVIMAGE_IA44;
+static XF86ImageRec ai44_subpicture = XVIMAGE_AI44;
 
 static XF86ImagePtr subpictures[] =
 {
-	(XF86ImagePtr)&rgb_subpicture
+	(XF86ImagePtr)&rgb_subpicture,
+	(XF86ImagePtr)&ia44_subpicture,
+	(XF86ImagePtr)&ai44_subpicture
 };
 
 static XF86MCAdaptorRec adaptor_template =
 {
 	"",
-	1,
+	2,
 	surfaces,
-	1,
+	3,
 	subpictures,
 	(xf86XvMCCreateContextProcPtr)NULL,
 	(xf86XvMCDestroyContextProcPtr)NULL,

commit de9d1ba7efeba64f319efa00df183d3cb78f24af
Author: Emil Velikov <emil.l.velikov@gmail.com>
Date:   Tue Jul 19 00:35:38 2011 +0100

    drmmode_display: Resolve missing brackets
    
    Correct some missing/misplaced brackets in drmmode_pre_init()
    The issue was exposed when trying a 4 monitor desktop using two
    cards/gpus
    
    Resolves https://bugs.freedesktop.org/show_bug.cgi?id=39099
    
    Reported-By: Damian Nowak <nowaker@geozone.pl>
    Tested-By: Damian Nowak <nowaker@geozone.pl>
    Signed-off-by: Emil Velikov <emil.l.velikov@gmail.com>
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index e5e4673..3afef66 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -1185,8 +1185,8 @@ Bool drmmode_pre_init(ScrnInfoPtr pScrn, int fd, int cpp)
 	xf86CrtcSetSizeRange(pScrn, 320, 200, drmmode->mode_res->max_width,
 			     drmmode->mode_res->max_height);
 	for (i = 0; i < drmmode->mode_res->count_crtcs; i++) {
-		if (!xf86IsEntityShared(pScrn->entityList[0] ||
-		     pScrn->confScreen->device->screen == i))
+		if (!xf86IsEntityShared(pScrn->entityList[0]) ||
+		     (pScrn->confScreen->device->screen == i))
 			drmmode_crtc_init(pScrn, drmmode, i);
 	}
 

commit ef4957492956df54fafa6c75d576a07ce678ea0a
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Mon Jul 11 12:48:34 2011 +1000

    kms: fix multiple rotations in noaccel mode

diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 204d9e8..e5e4673 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -504,8 +504,7 @@ drmmode_crtc_shadow_destroy(xf86CrtcPtr crtc, PixmapPtr rotate_pixmap, void *dat
 	if (data) {
 		drmModeRmFB(drmmode->fd, drmmode_crtc->rotate_fb_id);
 		drmmode_crtc->rotate_fb_id = 0;
-		if (!pNv->NoAccel)
-			nouveau_bo_ref(NULL, &drmmode_crtc->rotate_bo);
+		nouveau_bo_ref(NULL, &drmmode_crtc->rotate_bo);
 		drmmode_crtc->rotate_pixmap = NULL;
 	}
 }

commit ab89aa022f0c78154e525b5f5787feee8024171f
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 17 10:10:09 2011 +1000

    nvc0: accept 0xdx chipsets
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

diff --git a/src/nv_driver.c b/src/nv_driver.c
index f503c39..f0bdb58 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -261,6 +261,7 @@ NVPciProbe(DriverPtr drv, int entity_num, struct pci_device *pci_dev,
 	case 0x90:
 	case 0xa0:
 	case 0xc0:
+	case 0xd0:
 		break;
 	default:
 		xf86DrvMsg(-1, X_ERROR, "Unknown chipset: NV%02x\n", chipset);
@@ -686,6 +687,7 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 		pNv->Architecture = NV_ARCH_50;
 		break;
 	case 0xc0:
+	case 0xd0:
 		pNv->Architecture = NV_ARCH_C0;
 		break;
 	default:

commit 7dd8987b8b69f56d04a199207122d2e51b9caa6e
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Fri Jun 17 10:07:36 2011 +1000

    nvc0: assume 0x9097's presence on all chipsets
    
    This appears to be the case thus far, and is what the 3D driver does.
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>

diff --git a/src/nvc0_accel.c b/src/nvc0_accel.c
index c37b30c..40bb2ef 100644
--- a/src/nvc0_accel.c
+++ b/src/nvc0_accel.c
@@ -87,22 +87,10 @@ NVAccelInit3D_NVC0(ScrnInfoPtr pScrn)
 	struct nouveau_channel *chan = pNv->chan;
 	struct nouveau_grobj *fermi, *m2mf;
 	struct nouveau_bo *bo;
-	uint32_t tclClass;
 	int ret, i;
 
-	switch (pNv->dev->chipset) {
-	case 0xc0:
-	case 0xc1:
-	case 0xc3:
-	case 0xc4:
-		tclClass = 0x9097;
-		break;
-	default:
-		return FALSE;
-	}
-
 	if (!pNv->Nv3D) {
-		ret = nouveau_grobj_alloc(chan, tclClass, tclClass, &pNv->Nv3D);
+		ret = nouveau_grobj_alloc(chan, 0x9097, 0x9097, &pNv->Nv3D);
 		if (ret)
 			return FALSE;
 

commit 98ee2105dbd8685e59c1967a587fccb6135743ac
Author: Ben Skeggs <bskeggs@redhat.com>
Date:   Mon May 30 10:10:58 2011 +1000

    kms: clear new fb to black on fb resize

diff --git a/src/drmmode_display.c b/src/drmmode_display.c
index 43a2672..204d9e8 100644
--- a/src/drmmode_display.c
+++ b/src/drmmode_display.c
@@ -1124,6 +1124,17 @@ drmmode_xf86crtc_resize(ScrnInfoPtr scrn, int width, int height)
 #if GET_ABI_MAJOR(ABI_VIDEODRV_VERSION) < 9
 	scrn->pixmapPrivate.ptr = ppix->devPrivate.ptr;
 #endif
+
+	if (!pNv->NoAccel) {
+		nouveau_bo_unmap(pNv->scanout);
+		pNv->EXADriverPtr->PrepareSolid(ppix, GXcopy, ~0, 0);
+		pNv->EXADriverPtr->Solid(ppix, 0, 0, width, height);
+		pNv->EXADriverPtr->DoneSolid(ppix);
+		nouveau_bo_map(pNv->scanout, NOUVEAU_BO_RDWR);
+	} else {
+		memset(pNv->scanout->map, 0x00, pNv->scanout->size);
+	}
+
 	nouveau_bo_unmap(pNv->scanout);
 
 	for (i = 0; i < xf86_config->num_crtc; i++) {


Reply to: