On Mon, 16 Apr 2001, Dan Hollis wrote:

> I don't know if anyone noticed, but the supposed udma100 fix has been
> posted here:
> 
> http://www.viahardware.com/download/viatweak.shtm
> 
> At the bottom of the page.
> 
> Technical discussion of the workaround (in german):
> http://home.tiscalinet.de/au-ja/review-kt133a-4.html
> 
> -Dan

Hi Dan,

This was sent to me the other day, is this waht you are talking about?

Cheers,

Andre Hedrick
Linux ATA Development
ASL Kernel Development
-----------------------------------------------------------------------------
ASL, Inc.                                     Toll free: 1-877-ASL-3535
1757 Houret Court                             Fax: 1-408-941-2071
Milpitas, CA 95035                            Web: www.aslab.com
--- linux-2.4.3/drivers/pci/quirks.c.kicker     Sun Apr 15 20:38:42 2001
+++ linux-2.4.3/drivers/pci/quirks.c    Sun Apr 15 21:20:49 2001
@@ -85,6 +85,29 @@
 }
 
 /*
+ *     VIA Apollo KT133 needs PCI latency patch
+ *     Made according to a windows driver based patch by George E. Breese
+ *     see PCI Latency Adjust on http://www.viahardware.com/download/viatweak.shtm
+ */
+static void __init quirk_vialatency(struct pci_dev *dev)
+{
+       u8 r70;
+
+       printk(KERN_INFO "Applying VIA PCI latency patch.\n");
+       /*
+        *    In register 0x70, mask off bit 2 (PCI Master read caching)
+        *    and 1 (Delay Transaction)
+        */
+       pci_read_config_byte(dev, 0x70, &r70);
+       r70 &= 0xf9;
+       pci_write_config_byte(dev, 0x70, r70);
+       /*
+        *    Turn off PCI Latency timeout (set to 0 clocks)
+        */
+       pci_write_config_byte(dev, 0x75, 0x80);
+}
+
+/*
  *     VIA Apollo VP3 needs ETBF on BT848/878
  */
  
@@ -275,6 +298,7 @@
        { PCI_FIXUP_FINAL,      PCI_VENDOR_ID_INTEL,    PCI_DEVICE_ID_INTEL_82443BX_2, 
 quirk_natoma },
        { PCI_FIXUP_FINAL,      PCI_VENDOR_ID_SI,       PCI_DEVICE_ID_SI_5597,         
 quirk_nopcipci },
        { PCI_FIXUP_FINAL,      PCI_VENDOR_ID_SI,       PCI_DEVICE_ID_SI_496,          
 quirk_nopcipci },
+       { PCI_FIXUP_FINAL,      PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_8363_0,      
+ quirk_vialatency },
        { PCI_FIXUP_FINAL,      PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_82C597_0,    
 quirk_viaetbf },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_82C597_0,    
 quirk_vt82c598_id },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_82C586_3,    
 quirk_vt82c586_acpi },

Reply via email to