[PATCH] 2.4.23-pre3 Don't change BIOS allocated IRQs

DORMANTno replies

From: Andrew de Quincey <hidden>
Date: 2003-09-16 23:08:34
Also in: lkml

With the help of Chris Wright testing several failed patches, I've tracked 
down another ACPI IRQ problem. On many systems, the BIOS 
pre-allocates IRQs for certain PCI devices, providing a list of alternate 
possibilities as well.

On some systems, changing the IRQ to one of those alternate possibilities 
works fine. On others however, it really isn't a good idea. As theres no 
way to tell which systems are good and bad in advance, this patch simply 
ensures that ACPI does not change an IRQ if the BIOS has pre-allocated it.

--- linux-2.4.23-pre3.null_crs/drivers/acpi/pci_link.c	2003-09-05 23:57:39.000000000 +0100
+++ linux-2.4.23-pre3.nochangeirq/drivers/acpi/pci_link.c	2003-09-16 23:59:49.212387016 +0100
@@ -507,15 +507,15 @@
 		irq = link->irq.active;
 	} else {
 		irq = link->irq.possible[0];
-	}
 
-	/* 
-	 * Select the best IRQ.  This is done in reverse to promote 
-	 * the use of IRQs 9, 10, 11, and >15.
-	 */
-	for (i=(link->irq.possible_count-1); i>0; i--) {
-		if (acpi_irq_penalty[irq] > acpi_irq_penalty[link->irq.possible[i]])
-			irq = link->irq.possible[i];
+		/* 
+		 * Select the best IRQ.  This is done in reverse to promote 
+		 * the use of IRQs 9, 10, 11, and >15.
+		 */
+		for (i=(link->irq.possible_count-1); i>0; i--) {
+			if (acpi_irq_penalty[irq] > acpi_irq_penalty[link->irq.possible[i]])
+				irq = link->irq.possible[i];
+		}
 	}
 
 	/* Attempt to enable the link device at this IRQ. */
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help