Skip to contentSkip to conversation

Simplify serverworks workaround.

PATCH In review Dave Jones 2 participants 2 messages Oct 24, 2001

lore
Share & tools
lore

Dave Jones

author
#0 lore raw

PATCH 1/1 Simplify serverworks workaround.

Linus, Richard,
Patch below makes the workaround for Serverworks LE chipsets a little simpler, and also adds a printk to let people know why they can't use Write-combining.

regards,

Dave.

arch/i386/kernel/mtrr.c +7 -16
diff -urN --exclude-from=/home/davej/.exclude linux/arch/i386/kernel/mtrr.c ../2.5/linux-dj/arch/i386/kernel/mtrr.c
@@ -473,25 +473,16 @@
     unsigned long config, dummy;
     struct pci_dev *dev = NULL;
     
-   /* ServerWorks LE chipsets have problems with  write-combining 
-      Don't allow it and  leave room for other chipsets to be tagged */
+   /* ServerWorks LE chipsets have problems with write-combining 
+      Don't allow it and leave room for other chipsets to be tagged */
 
-    if ((dev = pci_find_class(PCI_CLASS_BRIDGE_HOST << 8, NULL)) != NULL) {
-	switch(dev->vendor) {
-        case PCI_VENDOR_ID_SERVERWORKS:
- 	    switch (dev->device) {
-	    case PCI_DEVICE_ID_SERVERWORKS_LE:
+	if ((dev = pci_find_class(PCI_CLASS_BRIDGE_HOST << 8, NULL)) != NULL) {
+		if ((dev->vendor == PCI_VENDOR_ID_SERVERWORKS) &&
+			(dev->device == PCI_DEVICE_ID_SERVERWORKS_LE)) {
+		printk (KERN_INFO "mtrr: Serverworks LE detected. Write-combining disabled.\n");
 		return 0;
-		break;
-	    default:
-		break;
-	    }
-	    break;
-	default:
-	    break;
+		}
 	}
-    }
-
 
     switch ( mtrr_if )
     {
Signature · 2 lines
| Dave Jones.                    http://www.codemonkey.org.uk
| SuSE Labs .
#1 lore raw
Quoted 4 lines · Dave Jones

Linus, Richard,
Patch below makes the workaround for Serverworks LE chipsets a little simpler, and also adds a printk to let people know why they can't use Write-combining.

Do the serverworks HE chipsets have the same problem?