]> err.no Git - linux-2.6/commitdiff
[IA64] pci_get_legacy_ide_irq should return irq (not GSI)
authorZhang, Yanmin <yanmin_zhang@linux.intel.com>
Mon, 12 Feb 2007 06:12:01 +0000 (14:12 +0800)
committerTony Luck <tony.luck@intel.com>
Thu, 8 Mar 2007 18:04:44 +0000 (10:04 -0800)
Function pci_get_legacy_ide_irq is incorrect on ia64. It should return
irq vector instead of GSI. The fixed number 14 and 15 are just GSI.

Signed-off-by: Zhang Yanmin <yanmin.zhang@intel.com>
Signed-off-by: Tony Luck <tony.luck@intel.com>
include/asm-ia64/pci.h

index 5160233bbfac3a35f660174f01302f647e4cb55b..5a5d1c2ce39d1510e1d2a56dc1322929bab25029 100644 (file)
@@ -9,6 +9,7 @@
 
 #include <asm/io.h>
 #include <asm/scatterlist.h>
+#include <asm/hw_irq.h>
 
 /*
  * Can be used to override the logic in pci_scan_bus for skipping already-configured bus
@@ -170,7 +171,7 @@ pcibios_select_root(struct pci_dev *pdev, struct resource *res)
 #define HAVE_ARCH_PCI_GET_LEGACY_IDE_IRQ
 static inline int pci_get_legacy_ide_irq(struct pci_dev *dev, int channel)
 {
-       return channel ? 15 : 14;
+       return channel ? isa_irq_to_vector(15) : isa_irq_to_vector(14);
 }
 
 #endif /* _ASM_IA64_PCI_H */