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

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



 ChangeLog                            |   55 +++++++++
 configure.ac                         |    2 
 debian/changelog                     |    8 +
 debian/xserver-xorg-video-nv.install |    1 
 src/g80_display.c                    |   95 ++++++++++++++--
 src/g80_driver.c                     |   59 ----------
 src/g80_output.c                     |   22 +++
 src/g80_type.h                       |    2 
 src/nv_driver.c                      |  198 +++++++++--------------------------
 src/riva_driver.c                    |  108 -------------------
 10 files changed, 221 insertions(+), 329 deletions(-)

New commits:
commit d520933ea82b6e86157de26f58f2894c1c13bf6d
Author: Brice Goglin <bgoglin@debian.org>
Date:   Sun Jul 19 21:58:51 2009 +0200

    Prepare changelog for upload

diff --git a/debian/changelog b/debian/changelog
index 3645f15..823a068 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-xserver-xorg-video-nv (1:2.1.14-1) UNRELEASED; urgency=low
+xserver-xorg-video-nv (1:2.1.14-1) unstable; urgency=low
 
   [ David Nusinow ]
   * Remove 01_gen_pci_ids.diff. The X server now uses an internal table to
@@ -8,7 +8,7 @@ xserver-xorg-video-nv (1:2.1.14-1) UNRELEASED; urgency=low
   [ Brice Goglin ]
   * New upstream release.
 
- -- Brice Goglin <bgoglin@debian.org>  Sun, 19 Jul 2009 21:57:50 +0200
+ -- Brice Goglin <bgoglin@debian.org>  Sun, 19 Jul 2009 21:58:45 +0200
 
 xserver-xorg-video-nv (1:2.1.13-1) unstable; urgency=low
 

commit 403226fb5a48cfd7f350e739904c475fd124c538
Author: Brice Goglin <bgoglin@debian.org>
Date:   Sun Jul 19 22:02:47 2009 +0200

    Don't try to install usr/share/xserver-xorg/pci/* anymore

diff --git a/debian/xserver-xorg-video-nv.install b/debian/xserver-xorg-video-nv.install
index 8a9f4ba..614cfb4 100644
--- a/debian/xserver-xorg-video-nv.install
+++ b/debian/xserver-xorg-video-nv.install
@@ -1,3 +1,2 @@
 usr/lib/xorg/modules/drivers/*.so
 usr/share/man/man4/*
-usr/share/xserver-xorg/pci/*

commit fdbac4081f75f436ab3ba9576e225e149751e6d8
Author: Brice Goglin <bgoglin@debian.org>
Date:   Sun Jul 19 21:58:41 2009 +0200

    New upstream release

diff --git a/ChangeLog b/ChangeLog
index d91d56d..be2cfc4 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,58 @@
+commit c56b92149c6291e7ef96b30a4fc7bee30073b90c
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Thu Jul 2 12:03:13 2009 -0700
+
+    Bump to 2.1.14
+
+commit 05d2b851b96c2f1b3223f8d5f40b8ee074e5f23f
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Fri Jun 26 17:53:53 2009 -0700
+
+    More new chips
+
+commit 68c2914f1775541784e6cf88019960342d8433bc
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Fri Jun 12 17:34:43 2009 -0700
+
+    Fix modesets on certain GPUs that were broken by the previous commit.
+
+commit 36eb96854b34bee6b65a2b2d4df25f53b47194e4
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Wed Jun 10 18:49:32 2009 -0700
+
+    New chip support.
+    
+    Part of the G80DispPreInit change suggested by <shenyn321@hotmail.com>.
+
+commit 23ca1b0d4324ae65a0c2a39cc877d318063988b1
+Author: Adam Jackson <ajax@redhat.com>
+Date:   Thu May 28 15:11:20 2009 -0400
+
+    Remove useless loader symbol lists.
+
+commit c8d6f7aa7c99a1b71289f8e8e07becc10f61f379
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Fri May 15 16:24:57 2009 -0700
+
+    More chip names.
+    
+    Add support for the following previously unsupported chips:
+      * 0x0658 - Quadro FX 380
+      * 0x0659 - Quadro FX 580
+      * 0x065C - Quadro FX 770M
+
+commit 29acf7c970d12c1dfd7bf6c7a42fe2448aa7f3d7
+Author: Yinan Shen <shenyn321@gmail.com>
+Date:   Wed May 6 19:14:33 2009 -0700
+
+    G80: Fix incorrect I2C port access for ports above 3.
+
+commit bf18cd4842c33df61b03c3d4e0f00e34485fb957
+Author: Aaron Plattner <aplattner@nvidia.com>
+Date:   Tue May 5 01:29:08 2009 -0700
+
+    Fix a dumb typo in the chip name entry for the GeForce 9800 GTX+
+
 commit df87eaf191209b0f1619ea74dc9fb0314b6fd288
 Author: Adam Jackson <ajax@redhat.com>
 Date:   Tue Apr 7 13:40:36 2009 -0400
diff --git a/debian/changelog b/debian/changelog
index ab55273..3645f15 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,10 +1,14 @@
-xserver-xorg-video-nv (1:2.1.13-2) UNRELEASED; urgency=low
+xserver-xorg-video-nv (1:2.1.14-1) UNRELEASED; urgency=low
 
+  [ David Nusinow ]
   * Remove 01_gen_pci_ids.diff. The X server now uses an internal table to
     choose a driver during autoconfiguration.
     + Disable patch system and remove quilt from build-deps.
 
- -- David Nusinow <dnusinow@debian.org>  Mon, 04 May 2009 22:27:31 -0400
+  [ Brice Goglin ]
+  * New upstream release.
+
+ -- Brice Goglin <bgoglin@debian.org>  Sun, 19 Jul 2009 21:57:50 +0200
 
 xserver-xorg-video-nv (1:2.1.13-1) unstable; urgency=low
 

commit c56b92149c6291e7ef96b30a4fc7bee30073b90c
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Thu Jul 2 12:03:13 2009 -0700

    Bump to 2.1.14

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

commit 05d2b851b96c2f1b3223f8d5f40b8ee074e5f23f
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Fri Jun 26 17:53:53 2009 -0700

    More new chips

diff --git a/src/nv_driver.c b/src/nv_driver.c
index d1f4c24..3a396e0 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -729,6 +729,7 @@ NVIsG80(int chipType)
         case 0x06f0:
         case 0x0a60:
         case 0x0a70:
+        case 0x0ca0:
             return TRUE;
     }
 

commit 68c2914f1775541784e6cf88019960342d8433bc
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Fri Jun 12 17:34:43 2009 -0700

    Fix modesets on certain GPUs that were broken by the previous commit.

diff --git a/src/g80_display.c b/src/g80_display.c
index 1b1efe9..3cbaac3 100644
--- a/src/g80_display.c
+++ b/src/g80_display.c
@@ -208,7 +208,9 @@ G80CrtcSetPClk(xf86CrtcPtr crtc)
     if(pPriv->pclk == 0)
         return;
 
-    if(pNv->architecture < 0xa0) {
+    if(pNv->architecture <= 0xa0 ||
+       pNv->architecture == 0xaa ||
+       pNv->architecture == 0xac) {
         int lo_n, lo_m, hi_n, hi_m, p, i;
         CARD32 lo = pNv->reg[(0x00614104+headOff)/4];
         CARD32 hi = pNv->reg[(0x00614108+headOff)/4];

commit 36eb96854b34bee6b65a2b2d4df25f53b47194e4
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Wed Jun 10 18:49:32 2009 -0700

    New chip support.
    
    Part of the G80DispPreInit change suggested by <shenyn321@hotmail.com>.

diff --git a/src/g80_display.c b/src/g80_display.c
index cf4631d..1b1efe9 100644
--- a/src/g80_display.c
+++ b/src/g80_display.c
@@ -146,26 +146,95 @@ G80CalcPLL(float pclk, int *pNA, int *pMA, int *pNB, int *pMB, int *pP)
 }
 
 static void
+G80CalcPLL2(float pclk, int *pN, int *pM, int *pPL)
+{
+    const float refclk = 27000.0f;
+    const int minN = 8, maxN = 255;
+    const int minM = 1, maxM = 255;
+    const int minPL = 1, maxPL = 63;
+    const int minU = 25000, maxU = 50000;
+    const int minVco = 500000;
+    int maxVco = 1000000;
+    int lowPL, highPL, pl;
+    float vco, bestError = FLT_MAX;
+
+    vco = pclk + pclk / 50;
+
+    if(maxVco < vco) maxVco = vco;
+
+    highPL = (maxVco + vco - 1) / pclk;
+    if(highPL > maxPL) highPL = maxPL;
+    if(highPL < minPL) highPL = minPL;
+
+    lowPL = minVco / vco;
+    if(lowPL > maxPL) lowPL = maxPL;
+    if(lowPL < minPL) lowPL = minPL;
+
+    for(pl = highPL; pl >= lowPL; pl--) {
+        int m;
+
+        for(m = minM; m <= maxM; m++) {
+            int n;
+            float freq, error;
+
+            if(refclk / m < minU) break;
+            if(refclk / m > maxU) continue;
+
+            n = rint(pclk * pl * m / refclk);
+            if(n > maxN) break;
+            if(n < minN) continue;
+
+            freq = refclk * (n / (float)m) / pl;
+            error = fabsf(pclk - freq);
+            if(error < bestError) {
+                *pN = n;
+                *pM = m;
+                *pPL = pl;
+                bestError = error;
+            }
+        }
+    }
+}
+
+static void
 G80CrtcSetPClk(xf86CrtcPtr crtc)
 {
     G80Ptr pNv = G80PTR(crtc->scrn);
     G80CrtcPrivPtr pPriv = crtc->driver_private;
     xf86CrtcConfigPtr xf86_config = XF86_CRTC_CONFIG_PTR(crtc->scrn);
     const int headOff = 0x800 * pPriv->head;
-    int lo_n, lo_m, hi_n, hi_m, p, i;
-    CARD32 lo = pNv->reg[(0x00614104+headOff)/4];
-    CARD32 hi = pNv->reg[(0x00614108+headOff)/4];
+    int i;
+
+    if(pPriv->pclk == 0)
+        return;
+
+    if(pNv->architecture < 0xa0) {
+        int lo_n, lo_m, hi_n, hi_m, p, i;
+        CARD32 lo = pNv->reg[(0x00614104+headOff)/4];
+        CARD32 hi = pNv->reg[(0x00614108+headOff)/4];
+
+        pNv->reg[(0x00614100+headOff)/4] = 0x10000610;
+        lo &= 0xff00ff00;
+        hi &= 0x8000ff00;
 
-    pNv->reg[(0x00614100+headOff)/4] = 0x10000610;
-    lo &= 0xff00ff00;
-    hi &= 0x8000ff00;
+        G80CalcPLL(pPriv->pclk, &lo_n, &lo_m, &hi_n, &hi_m, &p);
 
-    G80CalcPLL(pPriv->pclk, &lo_n, &lo_m, &hi_n, &hi_m, &p);
+        lo |= (lo_m << 16) | lo_n;
+        hi |= (p << 28) | (hi_m << 16) | hi_n;
+        pNv->reg[(0x00614104+headOff)/4] = lo;
+        pNv->reg[(0x00614108+headOff)/4] = hi;
+    } else {
+        int n, m, pl;
+        CARD32 r = pNv->reg[(0x00614104+headOff)/4];
+
+        pNv->reg[(0x00614100+headOff)/4] = 0x50000610;
+        r &= 0xffc00000;
 
-    lo |= (lo_m << 16) | lo_n;
-    hi |= (p << 28) | (hi_m << 16) | hi_n;
-    pNv->reg[(0x00614104+headOff)/4] = lo;
-    pNv->reg[(0x00614108+headOff)/4] = hi;
+        G80CalcPLL2(pPriv->pclk, &n, &m, &pl);
+        r |= pl << 16 | m << 8 | n;
+
+        pNv->reg[(0x00614104+headOff)/4] = r;
+    }
     pNv->reg[(0x00614200+headOff)/4] = 0;
 
     for(i = 0; i < xf86_config->num_output; i++) {
@@ -235,6 +304,8 @@ G80DispPreInit(ScrnInfoPtr pScrn)
     pNv->reg[0x006101D8/4] = pNv->reg[0x0061B000/4];
     pNv->reg[0x006101E0/4] = pNv->reg[0x0061C000/4];
     pNv->reg[0x006101E4/4] = pNv->reg[0x0061C800/4];
+    pNv->reg[0x006101E8/4] = pNv->reg[0x0061D000/4];
+    pNv->reg[0x006101EC/4] = pNv->reg[0x0061D800/4];
     pNv->reg[0x0061A004/4] = 0x80550000;
     pNv->reg[0x0061A010/4] = 0x00000001;
     pNv->reg[0x0061A804/4] = 0x80550000;
diff --git a/src/g80_output.c b/src/g80_output.c
index 75bf7ba..b2d8b07 100644
--- a/src/g80_output.c
+++ b/src/g80_output.c
@@ -127,6 +127,11 @@ static Bool G80ReadPortMapping(int scrnIndex, G80Ptr pNv)
                                "VGA%d: invalid port type %d\n", or, portType);
                     break;
                 }
+                if(port >= G80_NUM_I2C_PORTS) {
+                    xf86DrvMsg(scrnIndex, X_WARNING,
+                               "VGA%d: unrecognized port %d\n", or, port);
+                    break;
+                }
                 if(pNv->i2cMap[port].dac != -1) {
                     xf86DrvMsg(scrnIndex, X_WARNING,
                                "DDC routing table corrupt!  DAC %i -> %i for "
@@ -152,6 +157,11 @@ static Bool G80ReadPortMapping(int scrnIndex, G80Ptr pNv)
                                "DVI%d: invalid port type %d\n", or, portType);
                     break;
                 }
+                if(port >= G80_NUM_I2C_PORTS) {
+                    xf86DrvMsg(scrnIndex, X_WARNING,
+                               "DVI%d: unrecognized port %d\n", or, port);
+                    break;
+                }
                 if(pNv->i2cMap[port].sor != -1)
                     xf86DrvMsg(scrnIndex, X_WARNING,
                                "DDC routing table corrupt!  SOR %i -> %i for "
@@ -181,6 +191,11 @@ static Bool G80ReadPortMapping(int scrnIndex, G80Ptr pNv)
                                "LVDS: invalid port type %d\n", portType);
                     break;
                 }
+                if(port >= G80_NUM_I2C_PORTS) {
+                    xf86DrvMsg(scrnIndex, X_WARNING,
+                               "LVDS: unrecognized port %d\n", port);
+                    break;
+                }
                 pNv->lvds.i2cPort = port;
 
                 break;
@@ -217,9 +232,11 @@ fail:
 
 static CARD32 i2cAddr(const int port)
 {
-    const CARD32 base = (port > 3) ? 0x0000E1D4 : 0x0000E138;
-    const CARD32 offset = (port > 3) ? 0x20 : 0x18;
-    return base + port * offset;
+    const CARD32 addrs[G80_NUM_I2C_PORTS] = {
+        0xE138, 0xE150, 0xE168, 0xE180, 0xE254, 0xE274, 0xE764, 0xE780, 0xE79C,
+        0xE7B8
+    };
+    return addrs[port];
 }
 
 static void G80_I2CPutBits(I2CBusPtr b, int clock, int data)
diff --git a/src/g80_type.h b/src/g80_type.h
index 0cebae7..9bb07a4 100644
--- a/src/g80_type.h
+++ b/src/g80_type.h
@@ -7,7 +7,7 @@
 #include <xf86Crtc.h>
 #include <xf86int10.h>
 
-#define G80_NUM_I2C_PORTS 6
+#define G80_NUM_I2C_PORTS 10
 
 typedef enum Head {
     HEAD0 = 0,
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 41840dd..d1f4c24 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -727,6 +727,8 @@ NVIsG80(int chipType)
         case 0x0650:
         case 0x06e0:
         case 0x06f0:
+        case 0x0a60:
+        case 0x0a70:
             return TRUE;
     }
 

commit 23ca1b0d4324ae65a0c2a39cc877d318063988b1
Author: Adam Jackson <ajax@redhat.com>
Date:   Thu May 28 15:11:20 2009 -0400

    Remove useless loader symbol lists.

diff --git a/src/g80_driver.c b/src/g80_driver.c
index ad8a424..5ecf895 100644
--- a/src/g80_driver.c
+++ b/src/g80_driver.c
@@ -51,56 +51,6 @@
 #define G80_REG_SIZE (1024 * 1024 * 16)
 #define G80_RESERVED_VIDMEM 0xd000
 
-static const char *fbSymbols[] = {
-    "fbPictureInit",
-    "fbScreenInit",
-    NULL
-};
-
-static const char *xaaSymbols[] = {
-    "XAACopyROP",
-    "XAACreateInfoRec",
-    "XAADestroyInfoRec",
-    "XAAFallbackOps",
-    "XAAInit",
-    "XAAPatternROP",
-    NULL
-};
-
-static const char *exaSymbols[] = {
-    "exaDriverAlloc",
-    "exaDriverInit",
-    "exaDriverFini",
-    NULL
-};
-
-static const char *i2cSymbols[] = {
-    "xf86CreateI2CBusRec",
-    "xf86I2CBusInit",
-    NULL
-};
-
-static const char *ramdacSymbols[] = {
-    "xf86CreateCursorInfoRec",
-    "xf86DestroyCursorInfoRec",
-    "xf86InitCursor",
-    NULL
-};
-
-static const char *ddcSymbols[] = {
-    "xf86PrintEDID",
-    "xf86DoEDID_DDC2",
-    "xf86SetDDCproperties",
-    NULL
-};
-
-static const char *int10Symbols[] = {
-    "xf86FreeInt10",
-    "xf86InitInt10",
-    "xf86ExecX86int10",
-    NULL
-};
-
 typedef enum {
     OPTION_HW_CURSOR,
     OPTION_NOACCEL,
@@ -243,7 +193,6 @@ G80PreInit(ScrnInfoPtr pScrn, int flags)
     pNv->int10 = NULL;
     pNv->int10Mode = 0;
     if(xf86LoadSubModule(pScrn, "int10")) {
-        xf86LoaderReqSymLists(int10Symbols, NULL);
         xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Initializing int10\n");
         pNv->int10 = xf86InitInt10(pEnt->index);
     }
@@ -434,7 +383,6 @@ G80PreInit(ScrnInfoPtr pScrn, int flags)
 
     if(!xf86LoadSubModule(pScrn, "i2c")) goto fail;
     if(!xf86LoadSubModule(pScrn, "ddc")) goto fail;
-    xf86LoaderReqSymLists(i2cSymbols, ddcSymbols, NULL);
 
     if(!G80DispPreInit(pScrn)) goto fail;
     /* Read the DDC routing table and create outputs */
@@ -465,17 +413,14 @@ G80PreInit(ScrnInfoPtr pScrn, int flags)
 
     /* Load fb */
     if(!xf86LoadSubModule(pScrn, "fb")) goto fail;
-    xf86LoaderReqSymLists(fbSymbols, NULL);
 
     if(!pNv->NoAccel) {
         switch(pNv->AccelMethod) {
         case XAA:
             if(!xf86LoadSubModule(pScrn, "xaa")) goto fail;
-            xf86LoaderReqSymLists(xaaSymbols, NULL);
             break;
         case EXA:
             if(!xf86LoadSubModule(pScrn, "exa")) goto fail;
-            xf86LoaderReqSymLists(exaSymbols, NULL);
             break;
         }
     }
@@ -486,9 +431,7 @@ G80PreInit(ScrnInfoPtr pScrn, int flags)
             xf86DrvMsg(pScrn->scrnIndex, X_ERROR, "Failed to load ramdac. "
                        "Falling back to software cursor.\n");
             pNv->HWCursor = FALSE;
-        } else {
-            xf86LoaderReqSymLists(ramdacSymbols, NULL);
-        }
+	}
     }
 
     return TRUE;
diff --git a/src/nv_driver.c b/src/nv_driver.c
index 5f0a5b4..41840dd 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -487,123 +487,6 @@ static SymTabRec NVKnownChipsets[] =
   {-1, NULL}
 };
 
-
-/*
- * List of symbols from other modules that this module references.  This
- * list is used to tell the loader that it is OK for symbols here to be
- * unresolved providing that it hasn't been told that they haven't been
- * told that they are essential via a call to xf86LoaderReqSymbols() or
- * xf86LoaderReqSymLists().  The purpose is this is to avoid warnings about
- * unresolved symbols that are not required.
- */
-
-static const char *vgahwSymbols[] = {
-    "vgaHWUnmapMem",
-    "vgaHWDPMSSet",
-    "vgaHWFreeHWRec",
-    "vgaHWGetHWRec",
-    "vgaHWGetIndex",
-    "vgaHWInit",
-    "vgaHWMapMem",
-    "vgaHWProtect",
-    "vgaHWRestore",
-    "vgaHWSave",
-    "vgaHWSaveScreen",
-    NULL
-};
-
-static const char *fbSymbols[] = {
-    "fbPictureInit",
-    "fbScreenInit",
-    NULL
-};
-
-static const char *xaaSymbols[] = {
-    "XAACopyROP",
-    "XAACreateInfoRec",
-    "XAADestroyInfoRec",
-    "XAAFallbackOps",
-    "XAAInit",
-    "XAAPatternROP",
-    NULL
-};
-
-static const char *ramdacSymbols[] = {
-    "xf86CreateCursorInfoRec",
-    "xf86DestroyCursorInfoRec",
-    "xf86InitCursor",
-    NULL
-};
-
-static const char *ddcSymbols[] = {
-    "xf86PrintEDID",
-    "xf86DoEDID_DDC2",
-    "xf86SetDDCproperties",
-    NULL
-};
-
-#ifdef XFree86LOADER
-static const char *vbeSymbols[] = {
-    "VBEInit",
-    "vbeFree",
-    "vbeDoEDID",
-    NULL
-};
-
-static const char *vbeModeSymbols[] = {
-    "VBEExtendedInit",
-    "VBEGetVBEInfo",
-    "VBEGetModePool",
-    "VBEValidateModes",
-    "VBESetModeParameters",
-    "VBEGetVBEMode",
-    "VBESetVBEMode",
-    NULL
-};
-#endif
-
-static const char *i2cSymbols[] = {
-    "xf86CreateI2CBusRec",
-    "xf86I2CBusInit",
-    NULL
-};
-
-static const char *shadowSymbols[] = {
-    "ShadowFBInit",
-    NULL
-};
-
-static const char *fbdevHWSymbols[] = {
-    "fbdevHWInit",
-    "fbdevHWUseBuildinMode",
-
-    "fbdevHWGetVidmem",
-
-    /* colormap */
-    "fbdevHWLoadPaletteWeak",
-
-    /* ScrnInfo hooks */
-    "fbdevHWAdjustFrameWeak",
-    "fbdevHWEnterVT",
-    "fbdevHWLeaveVTWeak",
-    "fbdevHWModeInit",
-    "fbdevHWSave",
-    "fbdevHWSwitchModeWeak",
-    "fbdevHWValidModeWeak",
-
-    "fbdevHWMapMMIO",
-    "fbdevHWMapVidmem",
-
-    NULL
-};
-
-static const char *int10Symbols[] = {
-    "xf86FreeInt10",
-    "xf86InitInt10",
-    NULL
-};
-
-
 #ifdef XFree86LOADER
 
 static MODULESETUPPROTO(nvSetup);
@@ -714,20 +597,6 @@ nvSetup(pointer module, pointer opts, int *errmaj, int *errmin)
         );
 
         /*
-         * Modules that this driver always requires may be loaded here
-         * by calling LoadSubModule().
-         */
-
-        /*
-         * Tell the loader about symbols from other modules that this module
-         * might refer to.
-         */
-        LoaderRefSymLists(vgahwSymbols, xaaSymbols, fbSymbols,
-                          ramdacSymbols, shadowSymbols,
-                          i2cSymbols, ddcSymbols, vbeSymbols,
-                          fbdevHWSymbols, int10Symbols, NULL);
-
-        /*
          * The return value must be non-NULL on success even though there
          * is no TearDownProc.
          */
@@ -1285,11 +1154,9 @@ Bool NVI2CInit(ScrnInfoPtr pScrn)
     char *mod = "i2c";
 
     if (xf86LoadSubModule(pScrn, mod)) {
-        xf86LoaderReqSymLists(i2cSymbols,NULL);
 
         mod = "ddc";
         if(xf86LoadSubModule(pScrn, mod)) {
-            xf86LoaderReqSymLists(ddcSymbols, NULL);
             return NVDACi2cInit(pScrn);
         } 
     }
@@ -1388,7 +1255,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 
     /* Initialize the card through int10 interface if needed */
     if (xf86LoadSubModule(pScrn, "int10")) {
- 	xf86LoaderReqSymLists(int10Symbols, NULL);
 #if !defined(__alpha__) && !defined(__powerpc__)
         xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Initializing int10\n");
         pNv->pInt = xf86InitInt10(pNv->pEnt->index);
@@ -1524,8 +1390,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 	return FALSE;
     }
     
-    xf86LoaderReqSymLists(vgahwSymbols, NULL);
-
     /*
      * Allocate a vgaHWRec
      */
@@ -1594,7 +1458,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 	    return FALSE;
 	}
 	
-	xf86LoaderReqSymLists(fbdevHWSymbols, NULL);
 	if (!fbdevHWInit(pScrn, pNv->PciInfo, NULL)) {
 	    xf86FreeInt10(pNv->pInt);
 	    return FALSE;
@@ -1702,7 +1565,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
                        "enabled.\n");
             return FALSE;
         }
-        xf86LoaderReqSymLists(vbeModeSymbols, NULL);
         pNv->pVbe = VBEExtendedInit(NULL, pNv->pEnt->index,
                                     SET_BIOS_SCRATCH | RESTORE_BIOS_SCRATCH);
         if (!pNv->pVbe) return FALSE;
@@ -2034,8 +1896,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 	return FALSE;
     }
 
-    xf86LoaderReqSymLists(fbSymbols, NULL);
-    
     /* Load XAA if needed */
     if (!pNv->NoAccel) {
 	if (!xf86LoadSubModule(pScrn, "xaa")) {
@@ -2043,7 +1903,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 	    NVFreeRec(pScrn);
 	    return FALSE;
 	}
-	xf86LoaderReqSymLists(xaaSymbols, NULL);
     }
 
     /* Load ramdac if needed */
@@ -2053,7 +1912,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 	    NVFreeRec(pScrn);
 	    return FALSE;
 	}
-	xf86LoaderReqSymLists(ramdacSymbols, NULL);
     }
 
     /* Load shadowfb if needed */
@@ -2063,7 +1921,6 @@ NVPreInit(ScrnInfoPtr pScrn, int flags)
 	    NVFreeRec(pScrn);
 	    return FALSE;
 	}
-	xf86LoaderReqSymLists(shadowSymbols, NULL);
     }
 
     pNv->CurrentLayout.bitsPerPixel = pScrn->bitsPerPixel;
diff --git a/src/riva_driver.c b/src/riva_driver.c
index b021749..3540fe9 100644
--- a/src/riva_driver.c
+++ b/src/riva_driver.c
@@ -60,103 +60,6 @@ static void	RivaRestore(ScrnInfoPtr pScrn);
 static Bool	RivaModeInit(ScrnInfoPtr pScrn, DisplayModePtr mode);
 
 
-/*
- * List of symbols from other modules that this module references.  This
- * list is used to tell the loader that it is OK for symbols here to be
- * unresolved providing that it hasn't been told that they haven't been
- * told that they are essential via a call to xf86LoaderReqSymbols() or
- * xf86LoaderReqSymLists().  The purpose is this is to avoid warnings about
- * unresolved symbols that are not required.
- */
-
-static const char *vgahwSymbols[] = {
-    "vgaHWUnmapMem",
-    "vgaHWDPMSSet",
-    "vgaHWFreeHWRec",
-    "vgaHWGetHWRec",
-    "vgaHWGetIndex",
-    "vgaHWInit",
-    "vgaHWMapMem",
-    "vgaHWProtect",
-    "vgaHWRestore",
-    "vgaHWSave",
-    "vgaHWSaveScreen",
-    NULL
-};
-
-static const char *fbSymbols[] = {
-    "fbPictureInit",
-    "fbScreenInit",
-    NULL
-};
-
-static const char *xaaSymbols[] = {
-    "XAAGetCopyROP",
-    "XAACreateInfoRec",
-    "XAADestroyInfoRec",
-    "XAAGetFallbackOps",
-    "XAAInit",
-    "XAAGetPatternROP",
-    NULL
-};
-
-static const char *ramdacSymbols[] = {
-    "xf86CreateCursorInfoRec",
-    "xf86DestroyCursorInfoRec",
-    "xf86InitCursor",
-    NULL
-};
-
-static const char *ddcSymbols[] = {
-    "xf86PrintEDID",
-    "xf86DoEDID_DDC2",
-    "xf86SetDDCproperties",
-    NULL
-};
-
-static const char *i2cSymbols[] = {
-    "xf86CreateI2CBusRec",
-    "xf86I2CBusInit",
-    NULL
-};
-
-static const char *shadowSymbols[] = {
-    "ShadowFBInit",
-    NULL
-};
-
-static const char *fbdevHWSymbols[] = {
-    "fbdevHWInit",
-    "fbdevHWUseBuildinMode",
-
-    "fbdevHWGetVidmem",
-
-    /* colormap */
-    "fbdevHWLoadPaletteWeak",
-
-    /* ScrnInfo hooks */
-    "fbdevHWAdjustFrameWeak",
-    "fbdevHWEnterVT",
-    "fbdevHWLeaveVTWeak",
-    "fbdevHWModeInit",
-    "fbdevHWSave",
-    "fbdevHWSwitchModeWeak",
-    "fbdevHWValidModeWeak",
-
-    "fbdevHWMapMMIO",
-    "fbdevHWMapVidmem",
-
-    NULL
-};
-
-static const char *int10Symbols[] = {
-    "xf86FreeInt10",
-    "xf86InitInt10",
-    NULL
-};
-
-
-
 typedef enum {
     OPTION_SW_CURSOR,
     OPTION_HW_CURSOR,
@@ -412,11 +315,9 @@ Bool RivaI2CInit(ScrnInfoPtr pScrn)
     char *mod = "i2c";
 
     if (xf86LoadSubModule(pScrn, mod)) {
-        xf86LoaderReqSymLists(i2cSymbols,NULL);
 
         mod = "ddc";
         if(xf86LoadSubModule(pScrn, mod)) {
-            xf86LoaderReqSymLists(ddcSymbols, NULL);
             return RivaDACi2cInit(pScrn);
         } 
     }
@@ -489,7 +390,6 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags)
 
     /* Initialize the card through int10 interface if needed */
     if (xf86LoadSubModule(pScrn, "int10")) {
- 	xf86LoaderReqSymLists(int10Symbols, NULL);
 #if !defined(__alpha__) 
         xf86DrvMsg(pScrn->scrnIndex, X_INFO, "Initializing int10\n");
         pRiva->pInt = xf86InitInt10(pRiva->pEnt->index);
@@ -575,8 +475,6 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags)
 	return FALSE;
     }
     
-    xf86LoaderReqSymLists(vgahwSymbols, NULL);
-
     /*
      * Allocate a vgaHWRec
      */
@@ -643,7 +541,6 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags)
 	    return FALSE;
 	}
 	
-	xf86LoaderReqSymLists(fbdevHWSymbols, NULL);
 	if (!fbdevHWInit(pScrn, pRiva->PciInfo, NULL)) {
 	    xf86FreeInt10(pRiva->pInt);
 	    return FALSE;
@@ -866,8 +763,6 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags)
 	return FALSE;
     }
 
-    xf86LoaderReqSymLists(fbSymbols, NULL);
-    
     /* Load XAA if needed */
     if (!pRiva->NoAccel) {
 	if (!xf86LoadSubModule(pScrn, "xaa")) {
@@ -875,7 +770,6 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags)
 	    RivaFreeRec(pScrn);
 	    return FALSE;
 	}
-	xf86LoaderReqSymLists(xaaSymbols, NULL);
     }
 
     /* Load ramdac if needed */
@@ -885,7 +779,6 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags)
 	    RivaFreeRec(pScrn);
 	    return FALSE;
 	}
-	xf86LoaderReqSymLists(ramdacSymbols, NULL);
     }
 
     /* Load shadowfb if needed */
@@ -895,7 +788,6 @@ RivaPreInit(ScrnInfoPtr pScrn, int flags)
 	    RivaFreeRec(pScrn);
 	    return FALSE;
 	}
-	xf86LoaderReqSymLists(shadowSymbols, NULL);
     }
 
     pRiva->CurrentLayout.bitsPerPixel = pScrn->bitsPerPixel;

commit c8d6f7aa7c99a1b71289f8e8e07becc10f61f379
Author: Aaron Plattner <aplattner@nvidia.com>
Date:   Fri May 15 16:24:57 2009 -0700

    More chip names.
    
    Add support for the following previously unsupported chips:
      * 0x0658 - Quadro FX 380
      * 0x0659 - Quadro FX 580
      * 0x065C - Quadro FX 770M

diff --git a/src/nv_driver.c b/src/nv_driver.c
index 223ac8e..5f0a5b4 100644
--- a/src/nv_driver.c
+++ b/src/nv_driver.c
@@ -124,7 +124,7 @@ _X_EXPORT DriverRec NV = {
 #endif
 };
 
-/* Known cards as of 2008/08/26 */
+/* Known cards as of 2009/05/15 */
 
 static SymTabRec NVKnownChipsets[] =
 {
@@ -288,6 +288,7 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE0147, "GeForce 6700 XL" },
   { 0x10DE0148, "GeForce Go 6600" },
   { 0x10DE0149, "GeForce Go 6600 GT" },
+  { 0x10DE014A, "Quadro NVS 440" },
   { 0x10DE014C, "Quadro FX 550" },
   { 0x10DE014D, "Quadro FX 550" },
   { 0x10DE014E, "Quadro FX 540" },
@@ -322,6 +323,7 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE0099, "GeForce Go 7800 GTX" },
   { 0x10DE009D, "Quadro FX 4500" },
 
+  { 0x10DE01D0, "GeForce 7350 LE" },
   { 0x10DE01D1, "GeForce 7300 LE" },
   { 0x10DE01D3, "GeForce 7300 SE" },
   { 0x10DE01D6, "GeForce Go 7200" },
@@ -335,6 +337,7 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE01DE, "Quadro FX 350" },
   { 0x10DE01DF, "GeForce 7300 GS" },
 
+  { 0x10DE0390, "GeForce 7650 GS" },
   { 0x10DE0391, "GeForce 7600 GT" },
   { 0x10DE0392, "GeForce 7600 GS" },
   { 0x10DE0393, "GeForce 7300 GT" },
@@ -351,6 +354,10 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE0290, "GeForce 7900 GTX" },
   { 0x10DE0291, "GeForce 7900 GT" },
   { 0x10DE0292, "GeForce 7900 GS" },
+  { 0x10DE0293, "GeForce 7950 GX2" },
+  { 0x10DE0294, "GeForce 7950 GX2" },
+  { 0x10DE0295, "GeForce 7950 GT"},
+  { 0x10DE0297, "GeForce Go 7950 GTX" },
   { 0x10DE0298, "GeForce Go 7900 GS" },
   { 0x10DE0299, "GeForce Go 7900 GTX" },
   { 0x10DE029A, "Quadro FX 2500M" },
@@ -364,8 +371,14 @@ static SymTabRec NVKnownChipsets[] =
   { 0x10DE0241, "GeForce 6150 LE" },
   { 0x10DE0242, "GeForce 6100" },
   { 0x10DE0244, "GeForce Go 6150" },
+  { 0x10DE0245, "Quadro NVS 210S / NVIDIA GeForce 6150LE" },
   { 0x10DE0247, "GeForce Go 6100" },
 


Reply to: