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 95035Web: 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.cSun 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 },