xserver: Branch 'master'

Martin-Éric Racine q-funk at kemper.freedesktop.org
Thu Sep 3 17:28:45 PDT 2009


 hw/xfree86/common/xf86AutoConfig.c |   22 +++++++++++++++++-----
 1 file changed, 17 insertions(+), 5 deletions(-)

New commits:
commit 842b7a47d583a7729099de3031ae20977dddf774
Author: Martin-Éric Racine <q-funk at iki.fi>
Date:   Fri Sep 4 03:25:32 2009 +0300

    Updated the PCI Vendor and Device IDs for all Geode variants.
    
    In practice, some of the native drivers for older Geode products
    have become deprecated due to lack of e.g. libpciaccess upgrade,
    but that's OK, since most distributions don't ship them anymore.
    In that case, we'll let X server fall back to good old VESA.

diff --git a/hw/xfree86/common/xf86AutoConfig.c b/hw/xfree86/common/xf86AutoConfig.c
index c6c839a..5fb9677 100644
--- a/hw/xfree86/common/xf86AutoConfig.c
+++ b/hw/xfree86/common/xf86AutoConfig.c
@@ -144,10 +144,6 @@ static int
 videoPtrToDriverList(struct pci_device *dev,
 		     char *returnList[], int returnListMax)
 {
-    /*
-     * things not handled yet:
-     * cyrix/nsc.  should be merged into geode anyway.
-     */
     int i;
     /* Add more entries here if we ever return more than 4 drivers for
        any device */
@@ -155,12 +151,28 @@ videoPtrToDriverList(struct pci_device *dev,
 
     switch (dev->vendor_id)
     {
+	/* AMD Geode LX */
 	case 0x1022:
 	    if (dev->device_id == 0x2081) {
 		driverList[0] = "geode";
-		driverList[1] = "amd";
 	    }
 	    break;
+	/* older Geode products acquired by AMD but still carrying an NSC vendor_id */
+	case 0x100B:
+	    if (dev->device_id == 0x0030) {
+		/* NSC Geode GX2 specifically or... */
+		driverList[0] = "geode";
+		/* GX2 support started in NSC and was later forked by AMD for GEODE so we keep it as a backup */
+		driverList[1] = "nsc";
+	    } else 
+		/* ... any kind of NSC Geode SC variant */
+		driverList[0] = "nsc";
+	    break;
+	/* Cyrix Geode GX1 */
+	case 0x1078:
+	    if (dev->device_id == 0x0104)
+		driverList[0] = "cyrix";
+	    break;
 	case 0x1142:		    driverList[0] = "apm"; break;
 	case 0xedd8:		    driverList[0] = "ark"; break;
 	case 0x1a03:		    driverList[0] = "ast"; break;


More information about the xorg-commit mailing list