Fix for NForce2 secondary IDE getting wrong IRQ

From: Nicholas Reilly
Date: Fri Sep 03 2004 - 21:00:53 EST


I am not on the list so please cc me on replies.

I have a Shuttle SN41G2 and the secondary IDE channel alternates between IRQ 15 (correct) and IRQ 7 (causing failures accessing the DVD+-RW which is master, no slave and also messing with the parallel port if it is enabled) on each boot. This is running ACPI and APIC on 2.6.5, 2.6.7 and 2.6.8. dmesg, dmidecode and /proc/acpi/dsdt are all identical (apart from dmesg printing of IRQ and errors it causes) regardless of whether it decides to go on 7 or 15. It is now running the latest BIOS, earlier BIOS did the same.

Comparing the amd74xx.c with piix.c suggests the following diff which works for me. MAINTAINERS doesn't list anyone for this driver and the file lists Vojtech Pavlik with no email address.

Regards,
Nick.

diff -u drivers/ide/pci/amd74xx.c ~/ide/amd74xx.c
--- drivers/ide/pci/amd74xx.c 2004-08-28 02:11:57.000000000 -0400
+++ /home/nreilly/ide/amd74xx.c 2004-09-03 21:21:30.000000000 -0400
@@ -443,6 +443,10 @@
hwif->autodma = 1;
hwif->drives[0].autodma = hwif->autodma;
hwif->drives[1].autodma = hwif->autodma;
+#ifndef CONFIG_IA64
+ if (!hwif->irq)
+ hwif->irq = hwif->channel ? 15 : 14;
+#endif /* CONFIG_IA64 */
}

#define DECLARE_AMD_DEV(name_str) \
-
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/