Patch to make VIA sata board bootable again.

From: Johnny Strom
Date: Fri Sep 01 2006 - 04:14:27 EST




Hello

The quirks.c update that went into 2.6.16.17 made an VIA machine here non bootable from an sata drive (via_sata), the error is:

"ATA1 qc timout"
"Failed to set xfermode".

And later kernel panic becouse no sata disk was found.
I tracked it down to the quirk update in 2.6.16.17. Below is a patch against 2.6.17.11 that reverses the uppdate and makse the system bootable again.

Another option is to find out the PCI_DEVICE_ID_VIA for the motherboard in question but I could not get that info. Dose someone have an idea how to find that info? then I can provide an patch that adds the right PCI_DEVICE_ID_VIA for my motherboard.



diff -ur linux-2.6.17.11-org/drivers/pci/quirks.c linux-2.6.17.11/drivers/pci/quirks.c
--- linux-2.6.17.11-org/drivers/pci/quirks.c 2006-09-01 10:38:31.135747500 +0300
+++ linux-2.6.17.11/drivers/pci/quirks.c 2006-09-01 10:42:28.870605000 +0300
@@ -652,13 +652,7 @@
pci_write_config_byte(dev, PCI_INTERRUPT_LINE, new_irq);
}
}
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_0, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_1, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_2, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C586_3, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686_4, quirk_via_irq);
-DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686_5, quirk_via_irq);
+DECLARE_PCI_FIXUP_ENABLE(PCI_VENDOR_ID_VIA, PCI_ANY_ID, quirk_via_irq);

/*
* VIA VT82C598 has its device ID settable and many BIOSes



Signed-off-by: johnny.strom@xxxxxx
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/