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

xserver-xorg-video-savage: Changes to 'ubuntu'



 .gitignore                                  |   78 +++
 COPYING                                     |  118 ++++-
 ChangeLog                                   |  487 +++++++++++++++++++++
 Makefile.am                                 |   12 
 configure.ac                                |   50 +-
 debian/README.source                        |   24 -
 debian/changelog                            |   74 +++
 debian/compat                               |    2 
 debian/control                              |   24 -
 debian/copyright                            |   71 +++
 debian/patches/101_fix_use_of_privates.diff |   23 -
 debian/patches/series                       |    1 
 debian/rules                                |  103 ----
 debian/watch                                |    1 
 debian/xsfbs/repack.sh                      |   32 -
 debian/xsfbs/xsfbs.mk                       |  285 ------------
 debian/xsfbs/xsfbs.sh                       |  622 ----------------------------
 man/Makefile.am                             |   59 --
 man/savage.man                              |    1 
 src/savage_accel.c                          |    3 
 src/savage_cursor.c                         |    6 
 src/savage_dga.c                            |    8 
 src/savage_dri.c                            |  269 ++++++------
 src/savage_driver.c                         |   47 --
 src/savage_driver.h                         |   15 
 src/savage_exa.c                            |    7 
 src/savage_hwmc.c                           |   10 
 src/savage_vbe.c                            |   10 
 src/savage_video.c                          |   79 ++-
 29 files changed, 1145 insertions(+), 1376 deletions(-)

New commits:
commit df43dfb3c5e47901fad6fd3aafac16867e526fac
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date:   Fri Dec 16 12:20:24 2011 +1100

    Merge in changelog entries missing from git.  Yay!

diff --git a/debian/changelog b/debian/changelog
index 0cd725c..943539b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -13,6 +13,19 @@ xserver-xorg-video-savage (1:2.3.3-1) unstable; urgency=low
 
  -- Julien Cristau <jcristau@debian.org>  Sun, 23 Oct 2011 17:15:11 +0200
 
+xserver-xorg-video-savage (1:2.3.2-3ubuntu2) natty; urgency=low
+
+  * Rebuild to pick up new Xserver dependencies
+
+ -- Christopher James Halse Rogers <raof@ubuntu.com>  Wed, 09 Mar 2011 14:51:44 +1100
+
+xserver-xorg-video-savage (1:2.3.2-3ubuntu1) natty; urgency=low
+
+  * Merge from Debian unstable. Remaining changes:
+    - 100_bustype_pci_by_default.diff (LP: 33617, 37218)
+
+ -- Tormod Volden <debian.tormod@gmail.com>  Tue, 22 Feb 2011 08:12:33 +0100
+
 xserver-xorg-video-savage (1:2.3.2-3) unstable; urgency=low
 
   * Merge from upstream up to aff8f966c6d3f7dbad2d92d040ce7f5c4b286eef

commit 18230696438fbe7a5d2d83947c594cbc3aef9970
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date:   Fri Dec 16 12:16:42 2011 +1100

    Finish documenting merge in changelog

diff --git a/debian/changelog b/debian/changelog
index 225ba05..0cd725c 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,7 +1,7 @@
 xserver-xorg-video-savage (1:2.3.3-1ubuntu1) precise; urgency=low
 
   * Merge from Debian Testing.  Remaining Ubuntu changes:
-    - 
+    - 100_bustype_pci_by_default.diff (LP: 33617, 37218)
   
  -- Christopher James Halse Rogers <raof@ubuntu.com>  Fri, 16 Dec 2011 12:10:26 +1100
 

commit 6799a197f1ecd0079002e6d24c3aaa9f6bb304a4
Author: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
Date:   Fri Dec 16 12:13:51 2011 +1100

    Remove 101_fix_use_of_privates; fixed upstream

diff --git a/debian/patches/101_fix_use_of_privates.diff b/debian/patches/101_fix_use_of_privates.diff
deleted file mode 100644
index 641ccd1..0000000
--- a/debian/patches/101_fix_use_of_privates.diff
+++ /dev/null
@@ -1,23 +0,0 @@
-From 830e58d086828fa0431303df32a847ddd3022654 Mon Sep 17 00:00:00 2001
-From: Keith Packard <keithp@keithp.com>
-Date: Thu, 25 Nov 2010 01:58:06 +0000
-Subject: savage: fix use of privates without initialisation
-
-Fixes bug 31614.
-
-Signed-off-by: Dave Airlie <airlied@redhat.com>
----
-diff --git a/src/savage_driver.c b/src/savage_driver.c
-index 7c3ce90..1cb91f6 100644
---- a/src/savage_driver.c
-+++ b/src/savage_driver.c
-@@ -4267,6 +4267,7 @@ SavageUpdateKey(ScrnInfoPtr pScrn, int r, int g, int b)
- 	ol = 0;
-     }
-     if (!(pScreen = pScrn->pScreen) 
-+	|| !psav->FBStart2nd
- 	|| !(pScrOvlPriv = fbOverlayGetScrPriv(pScreen))) 
- 	return;
-     key = ((Shift(r,psav->overlay.redShift) & psav->overlay.redMask)
---
-cgit v0.8.3-6-g21f6
diff --git a/debian/patches/series b/debian/patches/series
index c063179..ddccdcf 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -1,3 +1,2 @@
 03_request_16bit_depth.diff
 100_bustype_pci_by_default.diff
-101_fix_use_of_privates.diff

commit 6a72e9198a2f0e1add63c12ac65ca4127203d5c2
Author: Julien Cristau <jcristau@debian.org>
Date:   Sun Oct 23 17:15:18 2011 +0200

    Upload to unstable

diff --git a/debian/changelog b/debian/changelog
index 7f8710a..45ffbee 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,10 @@
-xserver-xorg-video-savage (1:2.3.3-1) UNRELEASED; urgency=low
+xserver-xorg-video-savage (1:2.3.3-1) unstable; urgency=low
 
+  [ Tormod Volden ]
   * New upstream release 
   * Bump Standards-Version to 3.9.2 (no changes needed)
 
- -- Tormod Volden <debian.tormod@gmail.com>  Sun, 09 Oct 2011 17:43:44 +0200
+ -- Julien Cristau <jcristau@debian.org>  Sun, 23 Oct 2011 17:15:11 +0200
 
 xserver-xorg-video-savage (1:2.3.2-3) unstable; urgency=low
 

commit fe01757b29892b49a48f49e12adf423c236509b6
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Sun Oct 9 18:22:07 2011 +0200

    Bump Standards-Version to 3.9.2

diff --git a/debian/changelog b/debian/changelog
index 11d7d4a..7f8710a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
 xserver-xorg-video-savage (1:2.3.3-1) UNRELEASED; urgency=low
 
   * New upstream release 
+  * Bump Standards-Version to 3.9.2 (no changes needed)
 
  -- Tormod Volden <debian.tormod@gmail.com>  Sun, 09 Oct 2011 17:43:44 +0200
 
diff --git a/debian/control b/debian/control
index ed6e160..4dd6c61 100644
--- a/debian/control
+++ b/debian/control
@@ -22,7 +22,7 @@ Build-Depends:
  x11proto-xf86dri-dev,
  quilt,
  xutils-dev (>= 1:7.5+4),
-Standards-Version: 3.9.1
+Standards-Version: 3.9.2
 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-savage
 Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-savage.git
 

commit f8d50e09487213746f896da8918c5ceafdf99884
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Sun Oct 9 18:15:09 2011 +0200

    Update changelogs

diff --git a/ChangeLog b/ChangeLog
index f8c4a54..9c3d48e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,136 @@
+commit 8b9c81bacf45a9f56b0ec275e1b48e1407380baf
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sat Oct 8 21:55:38 2011 +0200
+
+    Bump version to 2.3.3
+
+commit f7516fd3a01241aaeab65cd409091e68b4be234a
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sun Sep 18 22:28:31 2011 +0200
+
+    savage: Warn if broken drm maps are detected
+    
+    Linux kernel 2.6.30 - 2.6.39 had broken drm maps which would result
+    in assorted problems. Leave a message in the log if it looks like
+    the framebuffer map and the aperture map are mixed up.
+    
+    https://bugs.freedesktop.org/show_bug.cgi?id=32511
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+
+commit ca6c41fd8c9fcb563ee5f97689806edcb0da54bf
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sat Sep 17 11:58:50 2011 +0200
+
+    savage: Avoid unnecessary float calculation in video display
+    
+    There is no reason to do the division using floats as long as
+    the result is an integer and there is no risk of intermediate
+    overflow.
+    
+    This is in the code for "Old" chipsets. Integer division was already
+    used in the parallel code for "New" chipsets.
+    
+    Also fixed up the whitespace in both blocks.
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+    Reviewed-by: Matt Turner <mattst88@gmail.com>
+
+commit f27eac4b3fe9e6f13d3c54711488ebe7280f24dd
+Author: Hans-Juergen Mauser <hjmauser@gmx.net>
+Date:   Sat Sep 17 11:22:30 2011 +0200
+
+    savage: Fix Xv scaling on non-native resolutions
+    
+    If I set the resolution to 800x600 for example (to be able to use the
+    TV output in full screen mode), I only can see 800/1024 = 0,78 of the
+    real video width, no matter if the video is displayed in a small player
+    window or enlarged to full screen. On the right of the video display,
+    the remaining width is filled with a black (or sometimes blue) bar.
+    
+    The problem was mainly that only the drawing starting point was modified
+    by the scaling factor, but not the size-defining end of the drawing
+    rectangle.
+    
+    https://bugs.launchpad.net/bugs/670790
+    
+    Signed-off-by: Hans-Juergen Mauser <hjmauser@gmx.net>
+    Reviewed-by: Tormod Volden <debian.tormod@gmail.com>
+    Acked-by: Matt Turner <mattst88@gmail.com>
+
+commit d177ae0b11a1b47ce088cce8c3c6e0f94a706b5e
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Thu Apr 21 00:17:15 2011 +0200
+
+    savage: Fix &/&& typo in "magical" register setup
+    
+    Found with CFLAGS=-Wlogical-op
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
+
+commit 092d2aa5502d10b7f994003882202f2ffda5c9aa
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Tue Apr 19 00:02:50 2011 +0200
+
+    savage: Make SAVAGESelectBuffer() private (static)
+    
+    Also clean out some unused prototypes from savage_driver.h
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+    Reviewed-by: Matt Turner <mattst88@gmail.com>
+    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
+
+commit 644fcdfdac61500e61e7bfd5ac98f780d87ef803
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Mon Apr 18 23:08:55 2011 +0200
+
+    savage: Factor out a SAVAGESetAgpMode and call it on resume
+    
+    This should fix resume with AGP. After all these years...
+    
+    https://bugzilla.kernel.org/show_bug.cgi?id=4607
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+    Reviewed-by: Matt Turner <mattst88@gmail.com>
+    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
+
+commit ce6d156b72971bb8215a9443cbe76ce007c79663
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Mon Apr 18 22:36:25 2011 +0200
+
+    savage: New SAVAGEDRIResume function
+    
+    Move DRI stuff from savage_driver.c to savage_dri.c
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+    Reviewed-by: Matt Turner <mattst88@gmail.com>
+    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
+
+commit dad240d81ea5fa946d494467e677c6e1a3a12fd7
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Mon Apr 18 22:04:00 2011 +0200
+
+    savage: Fix logic in waitHSync
+    
+    Bit-masking the result of a boolean negation seems pointless,
+    so I guess this is what was intended: Only look at bit 0 of the
+    inStatus result.
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+    Reviewed-by: Matt Turner <mattst88@gmail.com>
+    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>
+
+commit a4f93e8860494285444e6b8a6ba801b9db8c9cdc
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Thu Mar 31 23:13:55 2011 +0200
+
+    Fix wrong frequency unit in trace output
+    
+    The mode pixel clock frequency is in kHz, not Hz.
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+
 commit aff8f966c6d3f7dbad2d92d040ce7f5c4b286eef
 Author: Tormod Volden <debian.tormod@gmail.com>
 Date:   Sun Feb 13 23:04:09 2011 +0100
diff --git a/debian/changelog b/debian/changelog
index 700b301..11d7d4a 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+xserver-xorg-video-savage (1:2.3.3-1) UNRELEASED; urgency=low
+
+  * New upstream release 
+
+ -- Tormod Volden <debian.tormod@gmail.com>  Sun, 09 Oct 2011 17:43:44 +0200
+
 xserver-xorg-video-savage (1:2.3.2-3) unstable; urgency=low
 
   * Merge from upstream up to aff8f966c6d3f7dbad2d92d040ce7f5c4b286eef

commit 8b9c81bacf45a9f56b0ec275e1b48e1407380baf
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Sat Oct 8 21:55:38 2011 +0200

    Bump version to 2.3.3

diff --git a/configure.ac b/configure.ac
index fcbc0ee..6836350 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@
 # Initialize Autoconf
 AC_PREREQ([2.60])
 AC_INIT([xf86-video-savage],
-        [2.3.2],
+        [2.3.3],
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         [xf86-video-savage])
 AC_CONFIG_SRCDIR([Makefile.am])

commit f7516fd3a01241aaeab65cd409091e68b4be234a
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Sun Sep 18 22:28:31 2011 +0200

    savage: Warn if broken drm maps are detected
    
    Linux kernel 2.6.30 - 2.6.39 had broken drm maps which would result
    in assorted problems. Leave a message in the log if it looks like
    the framebuffer map and the aperture map are mixed up.
    
    https://bugs.freedesktop.org/show_bug.cgi?id=32511
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>

diff --git a/src/savage_dri.c b/src/savage_dri.c
index 69563bd..8750925 100644
--- a/src/savage_dri.c
+++ b/src/savage_dri.c
@@ -1070,6 +1070,11 @@ Bool SAVAGEDRIScreenInit( ScreenPtr pScreen )
       return FALSE;
    }
 
+   /* Linux kernel DRM broken in 2.6.30 through 2.6.39 */
+   if (pDRIInfo->hFrameBuffer == pSAVAGEDRIServer->aperture.handle)
+       xf86DrvMsg( pScrn->scrnIndex, X_WARNING,
+		   "[drm] Detected broken drm maps. Please upgrade to linux kernel 3.x\n");
+
    if ( !SAVAGEDRIBuffersInit( pScreen ) ) {
       SAVAGEDRICloseScreen( pScreen );
       return FALSE;

commit ca6c41fd8c9fcb563ee5f97689806edcb0da54bf
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Sat Sep 17 11:58:50 2011 +0200

    savage: Avoid unnecessary float calculation in video display
    
    There is no reason to do the division using floats as long as
    the result is an integer and there is no risk of intermediate
    overflow.
    
    This is in the code for "Old" chipsets. Integer division was already
    used in the parallel code for "New" chipsets.
    
    Also fixed up the whitespace in both blocks.
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
    Reviewed-by: Matt Turner <mattst88@gmail.com>

diff --git a/src/savage_video.c b/src/savage_video.c
index 7d571ad..5f08a18 100644
--- a/src/savage_video.c
+++ b/src/savage_video.c
@@ -1503,16 +1503,15 @@ SavageDisplayVideoOld(
       }
 
     if (S3_MOBILE_TWISTER_SERIES(psav->Chipset)
-        && psav->FPExpansion) {
-        drw_w = (((float)(drw_w * psav->XExp1)/(float)psav->XExp2)+1);
-        drw_h = (float)(drw_h * psav->YExp1)/(float)psav->YExp2+1;
-        dstBox->x1 = (float)(dstBox->x1 * psav->XExp1)/(float)psav->XExp2;
-        dstBox->y1 = (float)(dstBox->y1 * psav->YExp1)/(float)psav->YExp2;
+	&& psav->FPExpansion) {
+	drw_w = (drw_w * psav->XExp1) / psav->XExp2 + 1;
+	drw_h = (drw_h * psav->YExp1) / psav->YExp2 + 1;
+	dstBox->x1 = (dstBox->x1 * psav->XExp1) / psav->XExp2;
+	dstBox->y1 = (dstBox->y1 * psav->YExp1) / psav->YExp2;
 	dstBox->x2 = (dstBox->x2 * psav->XExp1) / psav->XExp2;
 	dstBox->y2 = (dstBox->y2 * psav->YExp1) / psav->YExp2;
-
-        dstBox->x1 += psav->displayXoffset;
-        dstBox->y1 += psav->displayYoffset;
+	dstBox->x1 += psav->displayXoffset;
+	dstBox->y1 += psav->displayYoffset;
 	dstBox->x2 += psav->displayXoffset;
 	dstBox->y2 += psav->displayYoffset;
     }
@@ -1668,10 +1667,10 @@ SavageDisplayVideoNew(
 	    !psav->CrtOnly &&
 	    !psav->TvOn) 
     {
-	drw_w = (drw_w * psav->XExp1)/psav->XExp2 + 1;
-	drw_h = (drw_h * psav->YExp1)/psav->YExp2 + 1;
-	dstBox->x1 = (dstBox->x1 * psav->XExp1)/psav->XExp2;
-	dstBox->y1 = (dstBox->y1 * psav->YExp1)/psav->YExp2;
+	drw_w = (drw_w * psav->XExp1) / psav->XExp2 + 1;
+	drw_h = (drw_h * psav->YExp1) / psav->YExp2 + 1;
+	dstBox->x1 = (dstBox->x1 * psav->XExp1) / psav->XExp2;
+	dstBox->y1 = (dstBox->y1 * psav->YExp1) / psav->YExp2;
 	dstBox->x2 = (dstBox->x2 * psav->XExp1) / psav->XExp2;
 	dstBox->y2 = (dstBox->y2 * psav->YExp1) / psav->YExp2;
 	dstBox->x1 += psav->displayXoffset;

commit f27eac4b3fe9e6f13d3c54711488ebe7280f24dd
Author: Hans-Juergen Mauser <hjmauser@gmx.net>
Date:   Sat Sep 17 11:22:30 2011 +0200

    savage: Fix Xv scaling on non-native resolutions
    
    If I set the resolution to 800x600 for example (to be able to use the
    TV output in full screen mode), I only can see 800/1024 = 0,78 of the
    real video width, no matter if the video is displayed in a small player
    window or enlarged to full screen. On the right of the video display,
    the remaining width is filled with a black (or sometimes blue) bar.
    
    The problem was mainly that only the drawing starting point was modified
    by the scaling factor, but not the size-defining end of the drawing
    rectangle.
    
    https://bugs.launchpad.net/bugs/670790
    
    Signed-off-by: Hans-Juergen Mauser <hjmauser@gmx.net>
    Reviewed-by: Tormod Volden <debian.tormod@gmail.com>
    Acked-by: Matt Turner <mattst88@gmail.com>

diff --git a/src/savage_video.c b/src/savage_video.c
index 9f860c7..7d571ad 100644
--- a/src/savage_video.c
+++ b/src/savage_video.c
@@ -1508,9 +1508,13 @@ SavageDisplayVideoOld(
         drw_h = (float)(drw_h * psav->YExp1)/(float)psav->YExp2+1;
         dstBox->x1 = (float)(dstBox->x1 * psav->XExp1)/(float)psav->XExp2;
         dstBox->y1 = (float)(dstBox->y1 * psav->YExp1)/(float)psav->YExp2;
+	dstBox->x2 = (dstBox->x2 * psav->XExp1) / psav->XExp2;
+	dstBox->y2 = (dstBox->y2 * psav->YExp1) / psav->YExp2;
 
         dstBox->x1 += psav->displayXoffset;
         dstBox->y1 += psav->displayYoffset;
+	dstBox->x2 += psav->displayXoffset;
+	dstBox->y2 += psav->displayYoffset;
     }
 
     /*
@@ -1668,8 +1672,12 @@ SavageDisplayVideoNew(
 	drw_h = (drw_h * psav->YExp1)/psav->YExp2 + 1;
 	dstBox->x1 = (dstBox->x1 * psav->XExp1)/psav->XExp2;
 	dstBox->y1 = (dstBox->y1 * psav->YExp1)/psav->YExp2;
+	dstBox->x2 = (dstBox->x2 * psav->XExp1) / psav->XExp2;
+	dstBox->y2 = (dstBox->y2 * psav->YExp1) / psav->YExp2;
 	dstBox->x1 += psav->displayXoffset;
 	dstBox->y1 += psav->displayYoffset;
+	dstBox->x2 += psav->displayXoffset;
+	dstBox->y2 += psav->displayYoffset;
     }
 
 	if (psav->IsSecondary) {

commit d177ae0b11a1b47ce088cce8c3c6e0f94a706b5e
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Thu Apr 21 00:17:15 2011 +0200

    savage: Fix &/&& typo in "magical" register setup
    
    Found with CFLAGS=-Wlogical-op
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>

diff --git a/src/savage_driver.c b/src/savage_driver.c
index 6eb7dda..2b47c1d 100644
--- a/src/savage_driver.c
+++ b/src/savage_driver.c
@@ -2561,7 +2561,7 @@ static void SavageWriteMode(ScrnInfoPtr pScrn, vgaRegPtr vgaSavePtr,
 			(restore->refresh >= 75)
 		    )
 		    {
-			if( cr6d && LCD_ACTIVE )
+			if( cr6d & LCD_ACTIVE )
 			    cr79 = 0x05;
 			else
 			    cr79 = 0x08;
@@ -2578,7 +2578,7 @@ static void SavageWriteMode(ScrnInfoPtr pScrn, vgaRegPtr vgaSavePtr,
  */
 		    if( pScrn->displayWidth == 1024 )
 		    {
-			if( cr6d && LCD_ACTIVE )
+			if( cr6d & LCD_ACTIVE )
 			    cr79 = 0x08;
 			else
 			    cr79 = 0x0e;

commit 092d2aa5502d10b7f994003882202f2ffda5c9aa
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Tue Apr 19 00:02:50 2011 +0200

    savage: Make SAVAGESelectBuffer() private (static)
    
    Also clean out some unused prototypes from savage_driver.h
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
    Reviewed-by: Matt Turner <mattst88@gmail.com>
    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>

diff --git a/src/savage_dri.c b/src/savage_dri.c
index ab86e35..69563bd 100644
--- a/src/savage_dri.c
+++ b/src/savage_dri.c
@@ -386,7 +386,7 @@ static void SAVAGEBlockHandler( int screenNum, pointer blockData,
    psav->pDRIInfo->wrap.BlockHandler = SAVAGEBlockHandler;
 }
 
-void SAVAGESelectBuffer( ScrnInfoPtr pScrn, int which )
+static void SAVAGESelectBuffer( ScrnInfoPtr pScrn, int which )
 {
    SavagePtr psav = SAVPTR(pScrn);
    SAVAGEDRIServerPrivatePtr pSAVAGEDRIServer = psav->DRIServerInfo;
diff --git a/src/savage_driver.h b/src/savage_driver.h
index fde47ff..1737362 100644
--- a/src/savage_driver.h
+++ b/src/savage_driver.h
@@ -561,20 +561,6 @@ void SAVAGEDRICloseScreen( ScreenPtr pScreen );
 Bool SAVAGEDRIFinishScreenInit( ScreenPtr pScreen );
 void SAVAGEDRIResume( ScreenPtr pScreen );
 
-Bool SAVAGELockUpdate( ScrnInfoPtr pScrn, drmLockFlags flags );
-
-#if 0
-void SAVAGEGetQuiescence( ScrnInfoPtr pScrn );
-void SAVAGEGetQuiescenceShared( ScrnInfoPtr pScrn );
-#endif
-
-void SAVAGESelectBuffer(ScrnInfoPtr pScrn, int which);
-
-#if 0
-Bool SAVAGECleanupDma(ScrnInfoPtr pScrn);
-Bool SAVAGEInitDma(ScrnInfoPtr pScrn, int prim_size);
-#endif
-
 #define SAVAGE_AGP_1X_MODE		0x01
 #define SAVAGE_AGP_2X_MODE		0x02
 #define SAVAGE_AGP_4X_MODE		0x04

commit 644fcdfdac61500e61e7bfd5ac98f780d87ef803
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Mon Apr 18 23:08:55 2011 +0200

    savage: Factor out a SAVAGESetAgpMode and call it on resume
    
    This should fix resume with AGP. After all these years...
    
    https://bugzilla.kernel.org/show_bug.cgi?id=4607
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
    Reviewed-by: Matt Turner <mattst88@gmail.com>
    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>

diff --git a/src/savage_dri.c b/src/savage_dri.c
index 70e50cb..ab86e35 100644
--- a/src/savage_dri.c
+++ b/src/savage_dri.c
@@ -426,29 +426,11 @@ static unsigned int mylog2( unsigned int n )
    return log2;
 }
 
-static Bool SAVAGEDRIAgpInit(ScreenPtr pScreen)
+static Bool SAVAGESetAgpMode(SavagePtr psav, ScreenPtr pScreen)
 {
-   ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
-   SavagePtr psav = SAVPTR(pScrn);
-   SAVAGEDRIServerPrivatePtr pSAVAGEDRIServer = psav->DRIServerInfo;
-   unsigned long mode;
-   unsigned int vendor, device;
-   unsigned int offset;
-   int ret;
-
-   if (psav->agpSize < 2) psav->agpSize = 2; /* at least 2MB for DMA buffers */
-
-   pSAVAGEDRIServer->agp.size = psav->agpSize * 1024 * 1024;
-   pSAVAGEDRIServer->agp.offset = pSAVAGEDRIServer->agp.size; /* ? */
-
-   if ( drmAgpAcquire( psav->drmFD ) < 0 ) {
-      xf86DrvMsg( pScreen->myNum, X_ERROR, "[agp] AGP not available\n" );
-      return FALSE;
-   }
-
-   mode   = drmAgpGetMode( psav->drmFD );        /* Default mode */
-   vendor = drmAgpVendorId( psav->drmFD );
-   device = drmAgpDeviceId( psav->drmFD );
+   unsigned long mode = drmAgpGetMode( psav->drmFD );    /* Default mode */
+   unsigned int vendor = drmAgpVendorId( psav->drmFD );
+   unsigned int device = drmAgpDeviceId( psav->drmFD );
 
    mode &= ~SAVAGE_AGP_MODE_MASK;
 
@@ -462,8 +444,6 @@ static Bool SAVAGEDRIAgpInit(ScreenPtr pScreen)
       mode |= SAVAGE_AGP_1X_MODE;
    }
 
-   /*   mode |= SAVAGE_AGP_1X_MODE;*/
-
    xf86DrvMsg( pScreen->myNum, X_INFO,
 	       "[agp] Mode 0x%08lx [AGP 0x%04x/0x%04x; Card 0x%04x/0x%04x]\n",
 	       mode, vendor, device,
@@ -473,6 +453,32 @@ static Bool SAVAGEDRIAgpInit(ScreenPtr pScreen)
    if ( drmAgpEnable( psav->drmFD, mode ) < 0 ) {
       xf86DrvMsg( pScreen->myNum, X_ERROR, "[agp] AGP not enabled\n" );
       drmAgpRelease( psav->drmFD );
+      return FALSE;
+   }
+
+   return TRUE;
+}
+
+static Bool SAVAGEDRIAgpInit(ScreenPtr pScreen)
+{
+   ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+   SavagePtr psav = SAVPTR(pScrn);
+   SAVAGEDRIServerPrivatePtr pSAVAGEDRIServer = psav->DRIServerInfo;
+   unsigned int offset;
+   int ret;
+
+   if (psav->agpSize < 2)
+      psav->agpSize = 2; /* at least 2MB for DMA buffers */
+
+   pSAVAGEDRIServer->agp.size = psav->agpSize * 1024 * 1024;
+   pSAVAGEDRIServer->agp.offset = pSAVAGEDRIServer->agp.size; /* ? */
+
+   if ( drmAgpAcquire( psav->drmFD ) < 0 ) {
+      xf86DrvMsg( pScreen->myNum, X_ERROR, "[agp] AGP not available\n" );
+      return FALSE;
+   }
+
+   if (!SAVAGESetAgpMode(psav, pScreen)) {
       pSAVAGEDRIServer->agp.handle = 0; /* indicate that AGP init failed */
       return FALSE;
    }
@@ -1294,6 +1300,9 @@ void SAVAGEDRIResume(ScreenPtr pScreen)
    SAVAGESAREAPrivPtr pSAREAPriv =
 			(SAVAGESAREAPrivPtr)DRIGetSAREAPrivate(pScreen);
 
+   if (!psav->IsPCI) {
+	SAVAGESetAgpMode(psav, pScreen);
+   }
    SAVAGEDRISetupTiledSurfaceRegs(psav);
    /* Assume that 3D state was clobbered, invalidate it by
     * changing ctxOwner in the sarea. */

commit ce6d156b72971bb8215a9443cbe76ce007c79663
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Mon Apr 18 22:36:25 2011 +0200

    savage: New SAVAGEDRIResume function
    
    Move DRI stuff from savage_driver.c to savage_dri.c
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
    Reviewed-by: Matt Turner <mattst88@gmail.com>
    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>

diff --git a/src/savage_dri.c b/src/savage_dri.c
index e0b9f86..70e50cb 100644
--- a/src/savage_dri.c
+++ b/src/savage_dri.c
@@ -1078,7 +1078,7 @@ Bool SAVAGEDRIScreenInit( ScreenPtr pScreen )
    return TRUE;
 }
 
-void SAVAGEDRISetupTiledSurfaceRegs( SavagePtr psav )
+static void SAVAGEDRISetupTiledSurfaceRegs( SavagePtr psav )
 {
       SAVAGEDRIPtr pSAVAGEDRI = (SAVAGEDRIPtr)psav->pDRIInfo->devPrivate;
       unsigned int value = 0;
@@ -1287,6 +1287,18 @@ Bool SAVAGEDRIFinishScreenInit( ScreenPtr pScreen )
    return TRUE;
 }
 
+void SAVAGEDRIResume(ScreenPtr pScreen)
+{
+   ScrnInfoPtr pScrn = xf86Screens[pScreen->myNum];
+   SavagePtr psav = SAVPTR(pScrn);
+   SAVAGESAREAPrivPtr pSAREAPriv =
+			(SAVAGESAREAPrivPtr)DRIGetSAREAPrivate(pScreen);
+
+   SAVAGEDRISetupTiledSurfaceRegs(psav);
+   /* Assume that 3D state was clobbered, invalidate it by
+    * changing ctxOwner in the sarea. */
+   pSAREAPriv->ctxOwner = DRIGetContext(pScreen);
+}
 
 void SAVAGEDRICloseScreen( ScreenPtr pScreen )
 {
diff --git a/src/savage_driver.c b/src/savage_driver.c
index 2aa50f4..6eb7dda 100644
--- a/src/savage_driver.c
+++ b/src/savage_driver.c
@@ -2200,9 +2200,8 @@ static Bool SavageEnterVT(int scrnIndex, int flags)
 {
     ScrnInfoPtr pScrn = xf86Screens[scrnIndex];
 #ifdef XF86DRI
-    SavagePtr psav= SAVPTR(pScrn);
+    SavagePtr psav = SAVPTR(pScrn);
     ScreenPtr pScreen;
-    SAVAGESAREAPrivPtr pSAREAPriv;
 #endif
 
     TRACE(("SavageEnterVT(%d)\n", flags));
@@ -2213,13 +2212,9 @@ static Bool SavageEnterVT(int scrnIndex, int flags)
 #ifdef XF86DRI
     if (psav->directRenderingEnabled) {
         pScreen = screenInfo.screens[scrnIndex];
-	pSAREAPriv = (SAVAGESAREAPrivPtr)DRIGetSAREAPrivate(pScreen);
-	/* Assume that 3D state was clobbered, invalidate it by
-	 * changing ctxOwner in the sarea. */
-	pSAREAPriv->ctxOwner = DRIGetContext(pScreen);
+        SAVAGEDRIResume(pScreen);
         DRIUnlock(pScreen);
         psav->LockHeld = 0;
-        SAVAGEDRISetupTiledSurfaceRegs ( psav );
     }
 #endif
     if (!SAVPTR(pScrn)->IsSecondary)
diff --git a/src/savage_driver.h b/src/savage_driver.h
index 64587fc..fde47ff 100644
--- a/src/savage_driver.h
+++ b/src/savage_driver.h
@@ -559,7 +559,7 @@ Bool SAVAGEDRIScreenInit( ScreenPtr pScreen );
 Bool SAVAGEInitMC(ScreenPtr pScreen);
 void SAVAGEDRICloseScreen( ScreenPtr pScreen );
 Bool SAVAGEDRIFinishScreenInit( ScreenPtr pScreen );
-void SAVAGEDRISetupTiledSurfaceRegs ( SavagePtr psav );
+void SAVAGEDRIResume( ScreenPtr pScreen );
 
 Bool SAVAGELockUpdate( ScrnInfoPtr pScrn, drmLockFlags flags );
 

commit dad240d81ea5fa946d494467e677c6e1a3a12fd7
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Mon Apr 18 22:04:00 2011 +0200

    savage: Fix logic in waitHSync
    
    Bit-masking the result of a boolean negation seems pointless,
    so I guess this is what was intended: Only look at bit 0 of the
    inStatus result.
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
    Reviewed-by: Matt Turner <mattst88@gmail.com>
    Reviewed-by: Alex Deucher <alexdeucher@gmail.com>

diff --git a/src/savage_cursor.c b/src/savage_cursor.c
index 4d193eb..6364293 100644
--- a/src/savage_cursor.c
+++ b/src/savage_cursor.c
@@ -67,8 +67,8 @@ static void SavageSetCursorColors(ScrnInfoPtr pScrn, int bg, int fg);
 #define waitHSync(n) { \
                        int num = n; \
                        while (num--) { \
-			 while ((inStatus1()) & 0x01){};\
-                         while (!(inStatus1()) & 0x01){};\
+			 while (inStatus1() & 0x01){};\
+                         while (!(inStatus1() & 0x01)){};\
                         } \
                       } 
 #define MAX_CURS 64

commit a4f93e8860494285444e6b8a6ba801b9db8c9cdc
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Thu Mar 31 23:13:55 2011 +0200

    Fix wrong frequency unit in trace output
    
    The mode pixel clock frequency is in kHz, not Hz.
    
    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>

diff --git a/src/savage_driver.c b/src/savage_driver.c
index 3098731..2aa50f4 100644
--- a/src/savage_driver.c
+++ b/src/savage_driver.c
@@ -3666,7 +3666,7 @@ static Bool SavageModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode)
     vgaCRIndex = vgaIOBase + 4;
     vgaCRReg = vgaIOBase + 5;
 
-    TRACE(("SavageModeInit(%dx%d, %dHz)\n", 
+    TRACE(("SavageModeInit(%dx%d, %dkHz)\n", 
 	mode->HDisplay, mode->VDisplay, mode->Clock));
     
 #if 0

commit 1b277de8d62db71a85a4dadf3201ea0d1969a141
Author: Cyril Brulebois <kibi@debian.org>
Date:   Mon Feb 21 23:43:20 2011 +0100

    Upload to unstable.

diff --git a/debian/changelog b/debian/changelog
index f7c9fce..700b301 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-savage (1:2.3.2-3) UNRELEASED; urgency=low
+xserver-xorg-video-savage (1:2.3.2-3) unstable; urgency=low
 
   * Merge from upstream up to aff8f966c6d3f7dbad2d92d040ce7f5c4b286eef
     - aff8f96... Use proper casts on framebuffer addresses
@@ -14,7 +14,7 @@ xserver-xorg-video-savage (1:2.3.2-3) UNRELEASED; urgency=low
     - 0cbb6d2... savage: Add casts to silence build warnings
   * Add myself as uploader
 
- -- Tormod Volden <debian.tormod@gmail.com>  Mon, 21 Feb 2011 22:00:45 +0100
+ -- Tormod Volden <debian.tormod@gmail.com>  Mon, 21 Feb 2011 23:43:12 +0100
 
 xserver-xorg-video-savage (1:2.3.2-2) unstable; urgency=low
 

commit 98f48aaa0e6949487048f76337d4cd29b68b78a4
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Mon Feb 21 23:38:58 2011 +0100

    Add myself as uploader

diff --git a/debian/changelog b/debian/changelog
index ed86d4b..f7c9fce 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -12,6 +12,7 @@ xserver-xorg-video-savage (1:2.3.2-3) UNRELEASED; urgency=low
     - df80590... savage: More (intermediate) casts to silence warnings
     - 35d9734... savage: Replace deprecated x(c)alloc/xfree with m/calloc/free
     - 0cbb6d2... savage: Add casts to silence build warnings
+  * Add myself as uploader
 
  -- Tormod Volden <debian.tormod@gmail.com>  Mon, 21 Feb 2011 22:00:45 +0100
 
diff --git a/debian/control b/debian/control
index cdf07ed..ed6e160 100644
--- a/debian/control
+++ b/debian/control
@@ -2,7 +2,9 @@ Source: xserver-xorg-video-savage
 Section: x11
 Priority: optional
 Maintainer: Debian X Strike Force <debian-x@lists.debian.org>
-Uploaders: Cyril Brulebois <kibi@debian.org>
+Uploaders:
+ Cyril Brulebois <kibi@debian.org>,
+ Tormod Volden <debian.tormod@gmail.com>
 Build-Depends:
  debhelper (>= 8),
  dh-autoreconf,

commit ab985e3104b5c8747638da2e52879edf0a059c22
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Mon Feb 21 22:54:04 2011 +0100

    Fix debian version to simply bump revision
    
    So that we can use the same tarball.

diff --git a/debian/changelog b/debian/changelog
index 226d5cb..ed86d4b 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,6 @@
-xserver-xorg-video-savage (1:2.3.2+git20110221.aff8f96-1) UNRELEASED; urgency=low
+xserver-xorg-video-savage (1:2.3.2-3) UNRELEASED; urgency=low
 
-  * New upstream snapshot:
+  * Merge from upstream up to aff8f966c6d3f7dbad2d92d040ce7f5c4b286eef
     - aff8f96... Use proper casts on framebuffer addresses
     - 6b22be0... savage: Fix initialization typo in SAVAGEDRIMoveBuffers
     - 9872b5f... savage: Fix building with TRACEON defined

commit be186c1aebb6c656c6e5b9ba7cf91018faa1ae76
Author: Tormod Volden <debian.tormod@gmail.com>
Date:   Mon Feb 21 22:05:06 2011 +0100

    New upstream snapshot, bump changelogs

diff --git a/ChangeLog b/ChangeLog
index 29b05ed..f8c4a54 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,128 @@
+commit aff8f966c6d3f7dbad2d92d040ce7f5c4b286eef
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sun Feb 13 23:04:09 2011 +0100
+
+    Use proper casts on framebuffer addresses
+    
+    Correction to df8059025cafadaeea7672842d31134ed8c9c5df.
+    Casting addresses to int is a 32bitism. If we want to use
+    this intermediate cast to silence compiler warnings, we
+    should use uintptr_t instead to not introduce potential
+    bit truncation.
+    
+    Thanks to Mark Kettenis for spotting this.
+    
+    Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
+
+commit 6b22be096bed59a853e5e1cdd25d8943cce30d4f
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sun Jan 23 23:45:49 2011 +0100
+
+    savage: Fix initialization typo in SAVAGEDRIMoveBuffers
+    
+    This was warned about when building with -O2, and seems
+    to be a copy-and-paste glitch.
+    
+    savage_dri.c: In function ‘SAVAGEDRIMoveBuffers’:
+    savage_dri.c:1445: warning: ‘pptNew2’ may be used uninitialized in this function
+
+commit 9872b5f7ce7a7b07ff68bd2c389c56a3cb1b4ed6
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sun Jan 23 22:47:01 2011 +0100
+
+    savage: Fix building with TRACEON defined
+    
+    Two warnings and an error.
+
+commit b018d343e6a6810afdaf1a73091dd9bc8c1c95bd
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sun Jan 23 20:23:49 2011 +0100
+
+    savage: Setup tiled surface registers in SavageEnterVT
+    
+    These registers are cleared after suspend/resume, so set them
+    up again in EnterVT.
+
+commit f3cd2946d0f38e89643aa6624e6bf35472828995
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sun Jan 23 20:23:48 2011 +0100
+
+    savage: Factor out a SAVAGEDRISetupTiledSurfaceRegs function
+    
+    The tiled surface registers were only setup in SAVAGEDRIScreenInit,
+    however, after suspend/resume these registers must be set up again.
+    So factor it out in a new function so it can be reused.
+
+commit 055ca25faeb9decee091e8c59134c8f537bb7bc3
+Author: Tormod Volden <debian.tormod@gmail.com>
+Date:   Sun Jan 23 19:28:47 2011 +0100
+
+    savage: Cast all handles before printing them
+    
+    Removes the last bunch of -Wall build warnings.
+    


Reply to: