Blob Blame History Raw
--- 915resolution-0.5.3/915resolution.c.lr	2007-10-14 19:35:46.000000000 +0200
+++ 915resolution-0.5.3/915resolution.c	2007-10-14 19:38:49.000000000 +0200
@@ -56,12 +56,12 @@
 
 typedef enum {
     CT_UNKWN, CT_830, CT_845G, CT_855GM, CT_865G, CT_915G, CT_915GM, CT_945G, CT_945GM,
-    CT_946GZ, CT_G965, CT_Q965
+    CT_946GZ, CT_G965, CT_965GM, CT_Q965
 } chipset_type;
 
 char * chipset_type_names[] = {
     "UNKNOWN", "830",  "845G", "855GM", "865G", "915G", "915GM", "945G", "945GM",
-    "946GZ",   "G965", "Q965"
+    "946GZ",   "G965", "965GM", "Q965"
 };
 
 typedef enum {
@@ -221,6 +221,10 @@
 	type = CT_G965;
 	break;
 
+    case 0x2a008086:
+	type = CT_965GM;
+	break;
+
     case 0x29908086:
         type = CT_Q965;
         break;
@@ -510,6 +514,7 @@
     case CT_945GM:
     case CT_946GZ:
     case CT_G965:
+    case CT_965GM:
     case CT_Q965:
         outl(0x80000090, 0xcf8);
         map->b1 = inb(0xcfd);
@@ -550,6 +555,7 @@
     case CT_945GM:
     case CT_946GZ:
     case CT_G965:
+    case CT_965GM:
     case CT_Q965:
         outl(0x80000090, 0xcf8);
         outb(map->b1, 0xcfd);
@@ -809,6 +815,9 @@
         else if (!strcmp(argv[index], "G965")) {
             *forced_chipset = CT_G965;
         }
+        else if (!strcmp(argv[index], "965GM")) {
+            *forced_chipset = CT_965GM;
+        }
         else if (!strcmp(argv[index], "Q965")) {
             *forced_chipset = CT_Q965;
         }