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

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



 .gitignore        |   75 ++++++++++++++++++---
 ChangeLog         |  185 ++++++++++++++++++++++++++++++++++++++++++++++++++++++
 Makefile.am       |   12 ++-
 configure.ac      |   17 ++--
 debian/changelog  |   11 ++-
 debian/control    |    2 
 man/.gitignore    |    2 
 man/Makefile.am   |   41 +++++------
 man/nv.man        |    6 -
 src/g80_display.c |  103 +++++++++++++++++++++++++++++-
 src/g80_display.h |    1 
 src/g80_driver.c  |   73 ++++++---------------
 src/g80_output.c  |   17 ++++
 src/nv_driver.c   |   55 +++++++++++++++-
 14 files changed, 487 insertions(+), 113 deletions(-)

New commits:
commit 62be6cd57e754b4f7e5e11111219e5e0c5329506
Author: Brice Goglin <bgoglin@debian.org>
Date:   Tue Mar 9 07:19:22 2010 +0100

    Prepare changelog for upload

diff --git a/debian/changelog b/debian/changelog
index 798cae0..93746cf 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-nv (1:2.1.17-1) UNRELEASED; urgency=low
+xserver-xorg-video-nv (1:2.1.17-1) unstable; urgency=low
 
   [ Julien Cristau ]
   * Rename the build directory to not include DEB_BUILD_GNU_TYPE for no
@@ -11,7 +11,7 @@ xserver-xorg-video-nv (1:2.1.17-1) UNRELEASED; urgency=low
     + Add support for ION boards, closes: #540500.
   * Bump Standards-Version to 3.8.4, no changes needed.
 
- -- Brice Goglin <bgoglin@debian.org>  Tue, 09 Mar 2010 07:17:38 +0100
+ -- Brice Goglin <bgoglin@debian.org>  Tue, 09 Mar 2010 07:19:12 +0100
 
 xserver-xorg-video-nv (1:2.1.15-1) experimental; urgency=low
 

commit e0071458ddecee1853a1d44a0688ab8f925d50e3
Author: Brice Goglin <bgoglin@debian.org>
Date:   Tue Mar 9 07:19:02 2010 +0100

    Bump Standards-Version to 3.8.4

diff --git a/debian/changelog b/debian/changelog
index 6a3d9af..798cae0 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -9,8 +9,9 @@ xserver-xorg-video-nv (1:2.1.17-1) UNRELEASED; urgency=low
   * New upstream release.
     + Fix support for Xserver 1.7, closes: #568170.
     + Add support for ION boards, closes: #540500.
+  * Bump Standards-Version to 3.8.4, no changes needed.
 
- -- Julien Cristau <jcristau@debian.org>  Sat, 23 Jan 2010 02:12:23 +0100
+ -- Brice Goglin <bgoglin@debian.org>  Tue, 09 Mar 2010 07:17:38 +0100
 
 xserver-xorg-video-nv (1:2.1.15-1) experimental; urgency=low
 
diff --git a/debian/control b/debian/control
index 4b47a0c..0dcbb26 100644
--- a/debian/control
+++ b/debian/control
@@ -17,7 +17,7 @@ Build-Depends:
  automake,
  libtool,
  xutils-dev
-Standards-Version: 3.8.3
+Standards-Version: 3.8.4
 Vcs-Git: git://git.debian.org/git/pkg-xorg/driver/xserver-xorg-video-nv
 Vcs-Browser: http://git.debian.org/?p=pkg-xorg/driver/xserver-xorg-video-nv.git
 

commit 9dc66e251fb094f745f2c2ecc46d0dc278e4fabc
Author: Brice Goglin <bgoglin@debian.org>
Date:   Tue Mar 9 07:17:00 2010 +0100

    New upstream release

diff --git a/ChangeLog b/ChangeLog
index f055e22..4dfa13f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,188 @@
+commit 71321d0ddecf1ab5327c754353d31db5d1f3c6bf
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Mon Mar 8 13:34:20 2010 -0800
+
+    nv 2.1.17
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+
+commit 467f0f3890622e57607b103b07e4f265cf999b1e
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Mon Mar 8 13:16:26 2010 -0800
+
+    More products
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+    Reviewed-by: Andy Ritger <ARitger@nvidia.com>
+
+commit e34a53167d6a142949b3e0258dc336dc297368aa
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Fri Mar 5 14:27:31 2010 -0800
+
+    G80: Cast register reads before shifting them to avoid truncation to 32 bits.
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+
+commit 9378ecd34ad71083602232b56e8810d6cd39b518
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Wed Mar 3 20:29:55 2010 -0800
+
+    Bug #19545: Add support for MCP7x-based integrated GPUs.
+    
+    Based in part on an idea from Ben Skeggs.
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+    Signed-off-by: Andy Ritger <aritger@nvidia.com>
+    Reviewed-by: Christian Zander <chzander@nvidia.com>
+
+commit 49349f6e47b7315088a80789f134895677f57287
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Tue Mar 2 12:53:54 2010 -0800
+
+    G80: Log unrecognized outputs
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+    Reviewed-by: Andy Ritger <aritger@nvidia.com>
+
+commit 7b01fc8f4ba1182370980f54a34bdb959e291e02
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Mon Mar 1 14:26:51 2010 -0800
+
+    Bug #26612: Separate LUTs per output.
+    
+    Wire up the RandR 1.2 gamma_set hook.  Call it from G80SetPalette like the Intel
+    driver does.
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+    Signed-off-by: Andy Ritger <aritger@nvidia.com>
+    Reviewed-by: Christian Zander <chzander@nvidia.com>
+
+commit e6f4c9c6379b20b9fee50489d6afd05867c35967
+Author: Alan Coopersmith <alan.coopersmith@sun.com>
+Date:   Fri Jan 15 13:46:50 2010 -0800
+
+    Update Sun license notices to current X.Org standard form
+    
+    Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
+
+commit 893cee2aeda8074de3d5c99df90e23d6ec2217d2
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date:   Tue Dec 15 22:01:02 2009 -0500
+
+    configure.ac: remove unused sdkdir=$(pkg-config...) statement
+    
+    The sdkdir variable isn't use, so remove the statement.
+    
+    Acked-by: Dan Nicholson <dbn.lists@gmail.com>
+    
+    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
+
+commit 2b69212ff84e8b815d6915dc81644280cc92cbe7
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Tue Dec 15 10:48:33 2009 -0800
+
+    nv 2.1.16
+
+commit 99ed1c83f78b3b947d95aa9f0d3b5555d9a2a769
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Tue Dec 15 10:17:27 2009 -0800
+
+    New board names
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+
+commit 5eb01497139ead89c7262a6055a4fd293c5beb3e
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Tue Dec 15 10:16:51 2009 -0800
+
+    Remove an unnecessary (and typo'd) gitignore comment
+
+commit 85638b2f0acc418aa77241dd123f7de76ea3ce8f
+Author: Adam Jackson <ajax@redhat.com>
+Date:   Tue Dec 15 16:42:15 2009 -0500
+
+    g80: Add a no-op gamma hook so we don't crash on 1.7 servers
+    
+    Signed-off-by: Adam Jackson <ajax@redhat.com>
+
+commit d3ba2a45ed21f60667716be0cdcb6a7888263ffd
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date:   Mon Nov 23 09:25:05 2009 -0500
+
+    Makefile.am: add ChangeLog and INSTALL on MAINTAINERCLEANFILES
+    
+    Now that the INSTALL file is generated.
+    Allows running make maintainer-clean.
+
+commit 8664df401ff26718608e0bfc319514387d232771
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date:   Wed Oct 28 14:41:41 2009 -0400
+
+    INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
+    
+    Automake 'foreign' option is specified in configure.ac.
+    Remove from Makefile.am
+
+commit bbb016dfdca06c34bdc163ee772284a5fc1f1139
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date:   Wed Oct 28 14:09:09 2009 -0400
+
+    INSTALL, NEWS, README or AUTHORS files are missing/incorrect #24206
+    
+    Add missing INSTALL file. Use standard GNU file on building tarball
+    README may have been updated
+    Remove AUTHORS file as it is empty and no content available yet.
+    Remove NEWS file as it is empty and no content available yet.
+
+commit ee24fd1773268e0a593c7de760bafa282f3489a2
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date:   Mon Oct 26 12:54:21 2009 -0400
+
+    Several driver modules do not have a ChangeLog target in Makefile.am #23814
+    
+    The git generated ChangeLog replaces the hand written one.
+    Update configure.ac to xorg-macros level 1.3.
+    Use XORG_DEFAULT_OPTIONS which replaces four XORG_* macros
+    Update Makefile.am to add ChangeLog target if missing
+    Remove ChangeLog from EXTRA_DIST or *CLEAN variables
+    This is a pre-req for the INSTALL_CMD
+
+commit 57c505852bcf38dc3a3e6a9d603e4a8fd9ed3b80
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date:   Thu Oct 22 13:02:49 2009 -0400
+
+    .gitignore: use common defaults with custom section # 24239
+    
+    Using common defaults will reduce errors and maintenance.
+    Only the very small or inexistent custom section need periodic maintenance
+    when the structure of the component changes. Do not edit defaults.
+
+commit f07ed67a9e14ddc42a96756fbe69cf927c308d1c
+Author: Gaetan Nadon <memsize@videotron.ca>
+Date:   Thu Oct 22 12:34:17 2009 -0400
+
+    .gitignore: use common defaults with custom section # 24239
+    
+    Using common defaults will reduce errors and maintenance.
+    Only the very small or inexistent custom section need periodic maintenance
+    when the structure of the component changes. Do not edit defaults.
+
+commit b30ec386abb7219be50c7aa42db9f08f12fe5c8c
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Tue Nov 10 12:17:23 2009 -0800
+
+    More new boards
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+
+commit f050096ad3c9ef4484b69c22217efe0557f16e35
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Mon Nov 9 16:16:19 2009 -0800
+
+    New boards
+    
+    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
+
 commit 0250f0d7ebe30368c5a63809ed1f58673493627c
 Author: Peter Hutterer <peter.hutterer@who-t.net>
 Date:   Fri Sep 11 12:24:18 2009 +1000
diff --git a/debian/changelog b/debian/changelog
index b8976dd..6a3d9af 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,9 +1,15 @@
-xserver-xorg-video-nv (1:2.1.15-2) UNRELEASED; urgency=low
+xserver-xorg-video-nv (1:2.1.17-1) UNRELEASED; urgency=low
 
+  [ Julien Cristau ]
   * Rename the build directory to not include DEB_BUILD_GNU_TYPE for no
     good reason.  Thanks, Colin Watson!
   * Remove myself from Uploaders
 
+  [ Brice Goglin ]
+  * New upstream release.
+    + Fix support for Xserver 1.7, closes: #568170.
+    + Add support for ION boards, closes: #540500.
+
  -- Julien Cristau <jcristau@debian.org>  Sat, 23 Jan 2010 02:12:23 +0100
 
 xserver-xorg-video-nv (1:2.1.15-1) experimental; urgency=low

commit 71321d0ddecf1ab5327c754353d31db5d1f3c6bf
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Mon Mar 8 13:34:20 2010 -0800

    nv 2.1.17
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>

diff --git a/configure.ac b/configure.ac
index 6b997f2..d717805 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-video-nv],
-        2.1.16,
+        2.1.17,
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-video-nv)
 

commit 467f0f3890622e57607b103b07e4f265cf999b1e
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Mon Mar 8 13:16:26 2010 -0800

    More products
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
    Reviewed-by: Andy Ritger <ARitger@nvidia.com>

diff --git a/man/nv.man b/man/nv.man
index 9bbe5cd..d7d8ae9 100644
--- a/man/nv.man
+++ b/man/nv.man
@@ -59,8 +59,8 @@ NV40, NV41, NV43, NV44, NV45, C51
 .B GeForce 7XXX
 G70, G71, G72, G73
 .TP 22
-.B GeForce 8XXX, GeForce 9XXX, GeForce G, ION
-G80, G84, G86, G92, G94, G96, G98, GT215, GT216, GT218, MCP79, MCP7A
+.B GeForce 8XXX, GeForce 9XXX, nForce 7, GeForce G, ION
+G8x, G9x, GT21x, MCP7x
 .TP 22
 .B GeForce GTX
 GT200
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 707e994..31fe78b 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -125,7 +125,7 @@ _X_EXPORT DriverRec NV = {
 #endif
 };
 
-/* Known cards as of 2010/03/03 */
+/* Known cards as of 2010/03/08 */
 
 static SymTabRec NVKnownChipsets[] =
 {
@@ -496,6 +496,16 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE06F9, "Quadro FX 370 LP" },
   { 0x10DE06FA, "Quadro NVS 450" },
   { 0x10DE06FD, "Quadro NVS 295" },
+  { 0x10DE0847, "GeForce 9100" },
+  { 0x10DE0848, "GeForce 8300" },
+  { 0x10DE0849, "GeForce 8200" },
+  { 0x10DE084A, "nForce 730a" },
+  { 0x10DE084B, "GeForce 9200" },
+  { 0x10DE084C, "nForce 980a/780a SLI" },
+  { 0x10DE084D, "nForce 750a SLI" },
+  { 0x10DE084F, "GeForce 8100 / nForce 720a" },
+  { 0x10DE0844, "GeForce 9100M G" },
+  { 0x10DE0845, "GeForce 8200M G" },
   { 0x10DE0861, "GeForce 9400" },
   { 0x10DE0862, "GeForce 9400M G" },
   { 0x10DE0863, "GeForce 9400M" },
@@ -763,6 +773,8 @@ NVIsG80(int chipType)
         case 0x0650:
         case 0x06e0:
         case 0x06f0:
+        case 0x0840:
+        case 0x0850:
         case 0x0860:
         case 0x0870:
         case 0x0a20:

commit e34a53167d6a142949b3e0258dc336dc297368aa
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Fri Mar 5 14:27:31 2010 -0800

    G80: Cast register reads before shifting them to avoid truncation to 32 bits.
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>

diff --git a/src/g80_driver.c b/src/g80_driver.c
index 324e180..abdb37e 100644
--- a/src/g80_driver.c
+++ b/src/g80_driver.c
@@ -615,8 +615,8 @@ G80InitHW(ScrnInfoPtr pScrn)
     pNv->reg[0x00706460/4] = 0x0000502d;
     pNv->reg[0x00706474/4] = 0x00010000;
     if(pNv->architecture == 0xaa || pNv->architecture == 0xac) {
-        uint64_t base = pNv->reg[0x00100E10/4] << 12;
-        size_t size = pNv->reg[0x00100E14/4] << 12;
+        uint64_t base = (uint64_t)pNv->reg[0x00100E10/4] << 12;
+        size_t size = (uint64_t)pNv->reg[0x00100E14/4] << 12;
         uint64_t limit = base + size - G80_RESERVED_VIDMEM;
 
         pNv->reg[0x00706480/4] = 0x1a003d;

commit 9378ecd34ad71083602232b56e8810d6cd39b518
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Wed Mar 3 20:29:55 2010 -0800

    Bug #19545: Add support for MCP7x-based integrated GPUs.
    
    Based in part on an idea from Ben Skeggs.
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
    Signed-off-by: Andy Ritger <aritger@nvidia.com>
    Reviewed-by: Christian Zander <chzander@nvidia.com>

diff --git a/man/nv.man b/man/nv.man
index e37782d..9bbe5cd 100644
--- a/man/nv.man
+++ b/man/nv.man
@@ -59,8 +59,8 @@ NV40, NV41, NV43, NV44, NV45, C51
 .B GeForce 7XXX
 G70, G71, G72, G73
 .TP 22
-.B GeForce 8XXX, GeForce 9XXX
-G80, G84, G86, G92, G94, G96, G98
+.B GeForce 8XXX, GeForce 9XXX, GeForce G, ION
+G80, G84, G86, G92, G94, G96, G98, GT215, GT216, GT218, MCP79, MCP7A
 .TP 22
 .B GeForce GTX
 GT200
@@ -197,7 +197,7 @@ Authors include: David McKay, Jarno Paananen, Chas Inman, Dave Schmenk,
 Mark Vojkovich, Aaron Plattner
 .SH COPYRIGHT
 .LP
-Copyright (c) 2003 - 2008 NVIDIA, Corporation
+Copyright (c) 2003-2008,2010 NVIDIA Corporation
 .LP
 Permission is hereby granted, free of charge, to any person obtaining a
 copy of this software and associated documentation files (the
diff --git a/src/g80_driver.c b/src/g80_driver.c
index 8ea45af..324e180 100644
--- a/src/g80_driver.c
+++ b/src/g80_driver.c
@@ -614,9 +614,20 @@ G80InitHW(ScrnInfoPtr pScrn)
     pNv->reg[0x00706454/4] = 0x00010000;
     pNv->reg[0x00706460/4] = 0x0000502d;
     pNv->reg[0x00706474/4] = 0x00010000;
-    pNv->reg[0x00706480/4] = 0x0019003d;
-    pNv->reg[0x00706484/4] = (pNv->videoRam << 10) - G80_RESERVED_VIDMEM;
-    pNv->reg[0x00706494/4] = 0x00010000;
+    if(pNv->architecture == 0xaa || pNv->architecture == 0xac) {
+        uint64_t base = pNv->reg[0x00100E10/4] << 12;
+        size_t size = pNv->reg[0x00100E14/4] << 12;
+        uint64_t limit = base + size - G80_RESERVED_VIDMEM;
+
+        pNv->reg[0x00706480/4] = 0x1a003d;
+        pNv->reg[0x00706484/4] = limit;
+        pNv->reg[0x00706488/4] = base;
+        pNv->reg[0x0070648c/4] = base >> 32 | ((limit >> 8) & 0xff000000);
+    } else {
+        pNv->reg[0x00706480/4] = 0x0019003d;
+        pNv->reg[0x00706484/4] = (pNv->videoRam << 10) - G80_RESERVED_VIDMEM;
+        pNv->reg[0x00706494/4] = 0x00010000;
+    }
     pNv->reg[0x007064a0/4] = 0x0019003d;
     pNv->reg[0x007064a4/4] = bar0_pramin + 0x1100f;
     pNv->reg[0x007064a8/4] = bar0_pramin + 0x11000;
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 67dc0cd..707e994 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -1,4 +1,5 @@
 /*
+ * Copyright 2010 NVIDIA Corporation
  * Copyright 1996-1997  David J. McKay
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
@@ -124,7 +125,7 @@ _X_EXPORT DriverRec NV = {
 #endif
 };
 
-/* Known cards as of 2009/05/15 */
+/* Known cards as of 2010/03/03 */
 
 static SymTabRec NVKnownChipsets[] =
 {
@@ -495,6 +496,15 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE06F9, "Quadro FX 370 LP" },
   { 0x10DE06FA, "Quadro NVS 450" },
   { 0x10DE06FD, "Quadro NVS 295" },
+  { 0x10DE0861, "GeForce 9400" },
+  { 0x10DE0862, "GeForce 9400M G" },
+  { 0x10DE0863, "GeForce 9400M" },
+  { 0x10DE086C, "GeForce 9300 / nForce 730i" },
+  { 0x10DE0872, "GeForce G102M" },
+  { 0x10DE0873, "GeForce G102M" },
+  { 0x10DE087A, "GeForce 9400" },
+  { 0x10DE087D, "ION" },
+  { 0x10DE087F, "ION LE" },
   { 0x10DE0A20, "GeForce GT 220" },
   { 0x10DE0A23, "GeForce 210" },
   { 0x10DE0A2A, "GeForce GT 230M" },
@@ -753,6 +763,8 @@ NVIsG80(int chipType)
         case 0x0650:
         case 0x06e0:
         case 0x06f0:
+        case 0x0860:
+        case 0x0870:
         case 0x0a20:
         case 0x0a30:
         case 0x0a60:

commit 49349f6e47b7315088a80789f134895677f57287
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Tue Mar 2 12:53:54 2010 -0800

    G80: Log unrecognized outputs
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
    Reviewed-by: Andy Ritger <aritger@nvidia.com>

diff --git a/src/g80_output.c b/src/g80_output.c
index b2d8b07..887208b 100644
--- a/src/g80_output.c
+++ b/src/g80_output.c
@@ -106,9 +106,13 @@ static Bool G80ReadPortMapping(int scrnIndex, G80Ptr pNv)
         port = (b >> 4) & 0xf;
         or = ffs((b >> 24) & 0xf) - 1;
 
-        if(b & 0x300000)
+        if(b & 0x300000) {
             /* Can't handle this type of output yet */
+            xf86DrvMsg(scrnIndex, X_INFO,
+                       "Ignoring unsupported external output type %d at output "
+                       "%d\n", type, or);
             continue;
+        }
 
         if(type == 0xe) break;
 
@@ -140,7 +144,8 @@ static Bool G80ReadPortMapping(int scrnIndex, G80Ptr pNv)
                 pNv->i2cMap[port].dac = or;
                 break;
             case 1: /* TV */
-                /* Ignore TVs */
+                xf86DrvMsg(scrnIndex, X_INFO,
+                           "Ignoring unsupported TV output %d\n", or);
                 break;
 
             case 2: /* TMDS */
@@ -200,7 +205,15 @@ static Bool G80ReadPortMapping(int scrnIndex, G80Ptr pNv)
 
                 break;
 
+            case 6: /* DisplayPort */
+                xf86DrvMsg(scrnIndex, X_INFO,
+                           "Ignoring unsupported DisplayPort output %d\n", or);
+                break;
+
             default:
+                xf86DrvMsg(scrnIndex, X_INFO,
+                           "Ignoring unsupported output type %d at port %d\n",
+                           type, or);
                 break;
         }
     }

commit 7b01fc8f4ba1182370980f54a34bdb959e291e02
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Mon Mar 1 14:26:51 2010 -0800

    Bug #26612: Separate LUTs per output.
    
    Wire up the RandR 1.2 gamma_set hook.  Call it from G80SetPalette like the Intel
    driver does.
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>
    Signed-off-by: Andy Ritger <aritger@nvidia.com>
    Reviewed-by: Christian Zander <chzander@nvidia.com>

diff --git a/src/g80_display.c b/src/g80_display.c
index 0cb9860..8c8e5bd 100644
--- a/src/g80_display.c
+++ b/src/g80_display.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007 NVIDIA, Corporation
+ * Copyright (c) 2007,2010 NVIDIA Corporation
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the
@@ -42,6 +42,8 @@ typedef struct G80CrtcPrivRec {
     Bool cursorVisible;
     Bool skipModeFixup;
     Bool dither;
+    /* Look-up table values to be set when the CRTC is enabled */
+    uint16_t lut_r[256], lut_g[256], lut_b[256];
 } G80CrtcPrivRec, *G80CrtcPrivPtr;
 
 static void G80CrtcShowHideCursor(xf86CrtcPtr crtc, Bool show, Bool update);
@@ -488,7 +490,7 @@ G80CrtcBlankScreen(xf86CrtcPtr crtc, Bool blank)
         if(pPriv->cursorVisible)
             G80CrtcShowHideCursor(crtc, TRUE, FALSE);
         C(0x00000840 + headOff, pScrn->depth == 8 ? 0x80000000 : 0xc0000000);
-        C(0x00000844 + headOff, (pNv->videoRam * 1024 - 0x5000) >> 8);
+        C(0x00000844 + headOff, (pNv->videoRam * 1024 - 0x5000 - 0x1000 * pPriv->head) >> 8);
         if(pNv->architecture != 0x50)
             C(0x0000085C + headOff, 1);
         C(0x00000874 + headOff, 1);
@@ -646,9 +648,98 @@ G80CrtcCommit(xf86CrtcPtr crtc)
 }
 
 static void
-G80DispGammaSet(xf86CrtcPtr crtc, CARD16 *red, CARD16 *green, CARD16 *blue,
-		int size)
+G80CrtcGammaSet(xf86CrtcPtr crtc, CARD16 *red, CARD16 *green, CARD16 *blue,
+                int size)
 {
+    ScrnInfoPtr pScrn = crtc->scrn;
+    G80Ptr pNv = G80PTR(pScrn);
+    G80CrtcPrivPtr pPriv = crtc->driver_private;
+    int i;
+    volatile struct {
+        uint16_t red, green, blue, unused;
+    } *lut = (void*)&pNv->mem[pNv->videoRam * 1024 - 0x5000 - 0x1000 * pPriv->head];
+
+    assert(size == 256);
+
+    for(i = 0; i < size; i++) {
+        pPriv->lut_r[i] = lut[i].red   = red[i] >> 2;
+        pPriv->lut_g[i] = lut[i].green = green[i] >> 2;
+        pPriv->lut_b[i] = lut[i].blue  = blue[i] >> 2;
+    }
+
+    lut[256] = lut[255];
+}
+
+void
+G80LoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices, LOCO *colors,
+               VisualPtr pVisual)
+{
+    xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(pScrn);
+    int i, j, index;
+    int p;
+    uint16_t lut_r[256], lut_g[256], lut_b[256];
+
+    for(p = 0; p < xf86_config->num_crtc; p++) {
+        xf86CrtcPtr crtc = xf86_config->crtc[p];
+        G80CrtcPrivPtr pPriv = crtc->driver_private;
+
+        /* Initialize to the old lookup table values. */
+        for(i = 0; i < 256; i++) {
+            lut_r[i] = pPriv->lut_r[i] << 2;
+            lut_g[i] = pPriv->lut_g[i] << 2;
+            lut_b[i] = pPriv->lut_b[i] << 2;
+        }
+
+        switch(pScrn->depth) {
+            case 15:
+                for(i = 0; i < numColors; i++) {
+                    index = indices[i];
+                    for(j = 0; j < 8; j++) {
+                        lut_r[index * 8 + j] =
+                            colors[index].red << 8;
+                        lut_g[index * 8 + j] =
+                            colors[index].green << 8;
+                        lut_b[index * 8 + j] =
+                            colors[index].blue << 8;
+                    }
+                }
+                break;
+            case 16:
+                for(i = 0; i < numColors; i++) {
+                    index = indices[i];
+
+                    if(index <= 31) {
+                        for(j = 0; j < 8; j++) {
+                            lut_r[index * 8 + j] =
+                                colors[index].red << 8;
+                            lut_b[index * 8 + j] =
+                                colors[index].blue << 8;
+                        }
+                    }
+
+                    for(j = 0; j < 4; j++) {
+                        lut_g[index * 4 + j] =
+                            colors[index].green << 8;
+                    }
+                }
+                break;
+            default:
+                for(i = 0; i < numColors; i++) {
+                    index = indices[i];
+                    lut_r[index] = colors[index].red << 8;
+                    lut_g[index] = colors[index].green << 8;
+                    lut_b[index] = colors[index].blue << 8;
+                }
+                break;
+        }
+
+        /* Make the change through RandR */
+#ifdef RANDR_12_INTERFACE
+        RRCrtcGammaSet(crtc->randr_crtc, lut_r, lut_g, lut_b);
+#else
+        crtc->funcs->gamma_set(crtc, lut_r, lut_g, lut_b, 256);
+#endif
+    }
 }
 
 static const xf86CrtcFuncsRec g80_crtc_funcs = {
@@ -660,7 +751,7 @@ static const xf86CrtcFuncsRec g80_crtc_funcs = {
     .mode_fixup = G80CrtcModeFixup,
     .prepare = G80CrtcPrepare,
     .mode_set = G80CrtcModeSet,
-    .gamma_set = G80DispGammaSet,
+    .gamma_set = G80CrtcGammaSet,
     .commit = G80CrtcCommit,
     .shadow_create = NULL,
     .shadow_destroy = NULL,
diff --git a/src/g80_display.h b/src/g80_display.h
index 2031fed..43c6e12 100644
--- a/src/g80_display.h
+++ b/src/g80_display.h
@@ -22,5 +22,6 @@ void G80CrtcSetCursorPosition(xf86CrtcPtr, int x, int y);
 void G80CrtcSkipModeFixup(xf86CrtcPtr);
 void G80CrtcSetDither(xf86CrtcPtr, Bool dither, Bool update);
 void G80CrtcSetScale(xf86CrtcPtr, DisplayModePtr, enum G80ScaleMode);
+void G80LoadPalette(ScrnInfoPtr, int numColors, int *indices, LOCO *, VisualPtr);
 
 void G80DispCreateCrtcs(ScrnInfoPtr pScrn);
diff --git a/src/g80_driver.c b/src/g80_driver.c
index 13e417a..8ea45af 100644
--- a/src/g80_driver.c
+++ b/src/g80_driver.c
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2007 NVIDIA, Corporation
+ * Copyright (c) 2007,2010 NVIDIA Corporation
  *
  * Permission is hereby granted, free of charge, to any person obtaining a
  * copy of this software and associated documentation files (the
@@ -57,7 +57,7 @@
 #include "g80_xaa.h"
 
 #define G80_REG_SIZE (1024 * 1024 * 16)
-#define G80_RESERVED_VIDMEM 0xd000
+#define G80_RESERVED_VIDMEM 0xe000
 
 typedef enum {
     OPTION_HW_CURSOR,
@@ -630,7 +630,7 @@ G80InitHW(ScrnInfoPtr pScrn)
 
     pNv->reg[0x00003224/4] = 0x000f0078;
     pNv->reg[0x0000322c/4] = 0x00000644;
-    pNv->reg[0x00003234/4] = G80_RESERVED_VIDMEM - 0x5001;
+    pNv->reg[0x00003234/4] = G80_RESERVED_VIDMEM - 0x6001;
     pNv->reg[0x00003254/4] = 0x00000001;
     pNv->reg[0x00002210/4] = 0x1c001000;
 
@@ -655,7 +655,7 @@ G80InitHW(ScrnInfoPtr pScrn)
 
     pNv->dmaPut = 0;
     pNv->dmaCurrent = SKIPS;
-    pNv->dmaMax = (G80_RESERVED_VIDMEM - 0x5000) / 4 - 2;
+    pNv->dmaMax = (G80_RESERVED_VIDMEM - 0x6000) / 4 - 2;
     pNv->dmaFree = pNv->dmaMax - pNv->dmaCurrent;
 
     G80DmaStart(pNv, 0, 1);
@@ -726,48 +726,6 @@ G80InitHW(ScrnInfoPtr pScrn)
     pNv->currentRop = ~0; /* Set to something invalid */
 }
 
-#define DEPTH_SHIFT(val, w) ((val << (8 - w)) | (val >> ((w << 1) - 8)))
-#define COLOR(c) (unsigned int)(0x3fff * ((c)/255.0))
-static void
-G80LoadPalette(ScrnInfoPtr pScrn, int numColors, int *indices, LOCO *colors,
-               VisualPtr pVisual)
-{
-    G80Ptr pNv = G80PTR(pScrn);
-    int i, index;
-    volatile struct {
-        unsigned short red, green, blue, unused;
-    } *lut = (void*)&pNv->mem[pNv->videoRam * 1024 - 0x5000];
-
-    switch(pScrn->depth) {
-        case 15:
-            for(i = 0; i < numColors; i++) {
-                index = indices[i];
-                lut[DEPTH_SHIFT(index, 5)].red = COLOR(colors[index].red);
-                lut[DEPTH_SHIFT(index, 5)].green = COLOR(colors[index].green);
-                lut[DEPTH_SHIFT(index, 5)].blue = COLOR(colors[index].blue);
-            }
-            break;
-        case 16:
-            for(i = 0; i < numColors; i++) {
-                index = indices[i];
-                lut[DEPTH_SHIFT(index, 6)].green = COLOR(colors[index].green);
-                if(index < 32) {
-                    lut[DEPTH_SHIFT(index, 5)].red = COLOR(colors[index].red);
-                    lut[DEPTH_SHIFT(index, 5)].blue = COLOR(colors[index].blue);
-                }
-            }
-            break;
-        default:
-            for(i = 0; i < numColors; i++) {
-                index = indices[i];
-                lut[index].red = COLOR(colors[index].red);
-                lut[index].green = COLOR(colors[index].green);
-                lut[index].blue = COLOR(colors[index].blue);
-            }
-            break;
-    }
-}
-
 static Bool
 G80ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
 {
@@ -866,6 +824,9 @@ G80ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
        Must precede creation of the default colormap */
     miDCInitialize(pScreen, xf86GetPointerScreenFuncs());
 
+    if(!xf86CrtcScreenInit(pScreen))
+        return FALSE;
+
     /* Initialize default colormap */
     if(!miCreateDefColormap(pScreen))
         return FALSE;
@@ -909,9 +870,6 @@ G80ScreenInit(int scrnIndex, ScreenPtr pScreen, int argc, char **argv)
     pNv->BlockHandler = pScreen->BlockHandler;
     pScreen->BlockHandler = G80BlockHandler;
 
-    if(!xf86CrtcScreenInit(pScreen))
-        return FALSE;
-
     return TRUE;
 }
 

commit e6f4c9c6379b20b9fee50489d6afd05867c35967
Author: Alan Coopersmith <alan.coopersmith@sun.com>
Date:   Fri Jan 15 13:46:50 2010 -0800

    Update Sun license notices to current X.Org standard form
    
    Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>

diff --git a/man/Makefile.am b/man/Makefile.am
index f0eb29b..8f2454b 100644
--- a/man/Makefile.am
+++ b/man/Makefile.am
@@ -1,27 +1,24 @@
 #
 # Copyright 2005 Sun Microsystems, Inc.  All rights reserved.
-# 
-# Permission to use, copy, modify, distribute, and sell this software and its
-# documentation for any purpose is hereby granted without fee, provided that
-# the above copyright notice appear in all copies and that both that
-# copyright notice and this permission notice appear in supporting
-# documentation.
-# 
-# The above copyright notice and this permission notice shall be included
-# in all copies or substantial portions of the Software.
-# 
-# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-# MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-# IN NO EVENT SHALL THE OPEN GROUP BE LIABLE FOR ANY CLAIM, DAMAGES OR
-# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-# OTHER DEALINGS IN THE SOFTWARE.
-# 
-# Except as contained in this notice, the name of the copyright holders shall
-# not be used in advertising or otherwise to promote the sale, use or
-# other dealings in this Software without prior written authorization
-# from the copyright holders.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a
+# copy of this software and associated documentation files (the "Software"),
+# to deal in the Software without restriction, including without limitation
+# the rights to use, copy, modify, merge, publish, distribute, sublicense,
+# and/or sell copies of the Software, and to permit persons to whom the
+# Software is furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice (including the next
+# paragraph) shall be included in all copies or substantial portions of the
+# Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+# FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+# DEALINGS IN THE SOFTWARE.
 # 
 
 drivermandir = $(DRIVER_MAN_DIR)

commit 893cee2aeda8074de3d5c99df90e23d6ec2217d2
Author: Gaetan Nadon <memsize@videotron.ca>
Date:   Tue Dec 15 22:01:02 2009 -0500

    configure.ac: remove unused sdkdir=$(pkg-config...) statement
    
    The sdkdir variable isn't use, so remove the statement.
    
    Acked-by: Dan Nicholson <dbn.lists@gmail.com>
    
    Signed-off-by: Gaetan Nadon <memsize@videotron.ca>

diff --git a/configure.ac b/configure.ac
index bdd9f08..6b997f2 100644
--- a/configure.ac
+++ b/configure.ac
@@ -72,7 +72,6 @@ PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
                   HAVE_XEXTPROTO_71="yes"; AC_DEFINE(HAVE_XEXTPROTO_71, 1, [xextproto 7.1 available]),
                   HAVE_XEXTPROTO_71="no")
 AM_CONDITIONAL(HAVE_XEXTPROTO_71, [ test "$HAVE_XEXTPROTO_71" = "yes" ])
-sdkdir=$(pkg-config --variable=sdkdir xorg-server)
 
 # Checks for libraries.
 

commit 2b69212ff84e8b815d6915dc81644280cc92cbe7
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Tue Dec 15 10:48:33 2009 -0800

    nv 2.1.16

diff --git a/configure.ac b/configure.ac
index 1947f4d..bdd9f08 100644
--- a/configure.ac
+++ b/configure.ac
@@ -22,7 +22,7 @@
 
 AC_PREREQ(2.57)
 AC_INIT([xf86-video-nv],
-        2.1.15,
+        2.1.16,
         [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg],
         xf86-video-nv)
 

commit 99ed1c83f78b3b947d95aa9f0d3b5555d9a2a769
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Tue Dec 15 10:17:27 2009 -0800

    New board names
    
    Signed-off-by: Aaron Plattner <aplattner@nvidia.com>

diff --git a/src/nv_driver.c b/src/nv_driver.c
index 7e6b861..67dc0cd 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -420,6 +420,8 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE05E1, "GeForce GTX 280" },
   { 0x10DE05E2, "GeForce GTX 260" },
   { 0x10DE05E3, "GeForce GTX 285" },
+  { 0x10DE05E6, "GeForce GTX 275" },
+  { 0x10DE05EB, "GeForce GTX 295" },
   { 0x10DE05F9, "Quadro CX" },
   { 0x10DE05FD, "Quadro FX 5800" },
   { 0x10DE05FE, "Quadro FX 4800" },
@@ -430,8 +432,10 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE0604, "GeForce 9800 GX2" },
   { 0x10DE0605, "GeForce 9800 GT" },
   { 0x10DE0606, "GeForce 8800 GS" },
+  { 0x10DE0607, "GeForce GTS 240" },
   { 0x10DE0608, "GeForce 9800M GTX" },
   { 0x10DE0609, "GeForce 8800M GTS" },
+  { 0x10DE060A, "GeForce GTX 280M" },
   { 0x10DE060B, "GeForce 9800M GT" },
   { 0x10DE060C, "GeForce 8800M GTX" },
   { 0x10DE060D, "GeForce 8800 GS" },
@@ -442,9 +446,12 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE0614, "GeForce 9800 GT" },
   { 0x10DE0615, "GeForce GTS 250" },
   { 0x10DE0617, "GeForce 9800M GTX" },
+  { 0x10DE0618, "GeForce GTX 260M" },
   { 0x10DE061A, "Quadro FX 3700" },
   { 0x10DE061C, "Quadro FX 3600M" },
+  { 0x10DE061D, "Quadro FX 2800M" },
   { 0x10DE061E, "Quadro FX 3700M" },
+  { 0x10DE061F, "Quadro FX 3800M" },
   { 0x10DE0622, "GeForce 9600 GT" },
   { 0x10DE0623, "GeForce 9600 GS" },
   { 0x10DE0625, "GeForce 9600 GSO 512" },
@@ -459,6 +466,7 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE0640, "GeForce 9500 GT" },
   { 0x10DE0641, "GeForce 9400 GT" },
   { 0x10DE0643, "GeForce 9500 GT" },
+  { 0x10DE0644, "GeForce 9500 GS" },
   { 0x10DE0646, "GeForce GT 120" },


Reply to: