patch2: sbc82xx-PCI-diff1 - allow m82xx_pci.c to be used by other platforms that have their own map_irq
I'm open to doing this another way if desired -- I just went for the minimal impact on the existing code with this. Signed-off-by: Paul Gortmaker <paul.gortmaker at windriver.com> diff -ur orig/linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.c linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.c --- orig/linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.c 2006-02-09 16:20:35.000000000 -0500 +++ linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.c 2006-02-09 16:01:40.000000000 -0500 @@ -198,7 +198,7 @@ } } -static int sbc82xx_pci_map_irq(struct pci_dev *dev, unsigned char idsel, +int pq2pci_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin) { static char pci_irq_table[][4] = { @@ -247,7 +247,7 @@ callback_init_IRQ = ppc_md.init_IRQ; ppc_md.init_IRQ = sbc82xx_init_IRQ; - ppc_md.pci_map_irq = sbc82xx_pci_map_irq; + ppc_md.pci_map_irq = pq2pci_map_irq; #ifdef CONFIG_GEN_RTC ppc_md.time_init = NULL; ppc_md.get_rtc_time = NULL; diff -ur orig/linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.h linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.h --- orig/linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.h 2006-02-09 16:20:35.000000000 -0500 +++ linux-2.6.16rc2/arch/ppc/platforms/sbc82xx.h 2006-02-09 16:35:05.000000000 -0500 @@ -24,6 +24,7 @@ #define BOOTROM_RESTART_ADDR ((uint)0x40000104) +#define HAVE_OWN_PQ2PCI_IRQ #define SBC82xx_PC_IRQA (NR_CPM_INTS+0) #define SBC82xx_PC_IRQB (NR_CPM_INTS+1) #define SBC82xx_MPC185_IRQ (NR_CPM_INTS+2) diff -ur orig/linux-2.6.16rc2/arch/ppc/syslib/m82xx_pci.c linux-2.6.16rc2/arch/ppc/syslib/m82xx_pci.c --- orig/linux-2.6.16rc2/arch/ppc/syslib/m82xx_pci.c 2006-01-02 22:21:10.000000000 -0500 +++ linux-2.6.16rc2/arch/ppc/syslib/m82xx_pci.c 2006-02-09 14:35:10.000000000 -0500 @@ -51,6 +51,10 @@ * Interrupt routing */ +#ifdef HAVE_OWN_PQ2PCI_IRQ +extern int +pq2pci_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin); +#else static inline int pq2pci_map_irq(struct pci_dev *dev, unsigned char idsel, unsigned char pin) { @@ -172,6 +176,7 @@ setup_irq(PCI_INT_TO_SIU, &pq2pci_irqaction); return; } +#endif /* HAVE_OWN_PQ2PCI_IRQ */ static int pq2pci_exclude_device(u_char bus, u_char devfn)