From: Gabor Juhos Date: Mon, 14 Nov 2011 11:49:47 +0000 (+0000) Subject: ar71xx: add an irq parameter for ar724x_pcibios_init X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=c15caea360424bf4abb5fa534e0625b9ed043879;p=openwrt%2Fstaging%2Fjow.git ar71xx: add an irq parameter for ar724x_pcibios_init SVN-Revision: 29105 --- diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/pci.c b/target/linux/ar71xx/files/arch/mips/ar71xx/pci.c index c44a40924b..bd9217caa4 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/pci.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/pci.c @@ -83,7 +83,7 @@ int __init ar71xx_pci_init(unsigned nr_irqs, struct ar71xx_pci_irq *map) case AR71XX_SOC_AR7242: case AR71XX_SOC_AR9342: case AR71XX_SOC_AR9344: - ret = ar724x_pcibios_init(); + ret = ar724x_pcibios_init(AR71XX_CPU_IRQ_IP2); break; default: diff --git a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/pci.h b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/pci.h index 7a4b1145f8..27043491ac 100644 --- a/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/pci.h +++ b/target/linux/ar71xx/files/arch/mips/include/asm/mach-ar71xx/pci.h @@ -33,7 +33,7 @@ int ar71xx_pci_be_handler(int is_fixup); int ar724x_pcibios_map_irq(const struct pci_dev *dev, uint8_t slot, uint8_t pin) __init; -int ar724x_pcibios_init(void) __init; +int ar724x_pcibios_init(int irq) __init; int ar71xx_pci_init(unsigned nr_irqs, struct ar71xx_pci_irq *map) __init; #else diff --git a/target/linux/ar71xx/files/arch/mips/pci/pci-ar724x.c b/target/linux/ar71xx/files/arch/mips/pci/pci-ar724x.c index 209985815c..57daa06148 100644 --- a/target/linux/ar71xx/files/arch/mips/pci/pci-ar724x.c +++ b/target/linux/ar71xx/files/arch/mips/pci/pci-ar724x.c @@ -325,7 +325,7 @@ static struct irq_chip ar724x_pci_irq_chip = { .irq_mask_ack = ar724x_pci_irq_mask, }; -static void __init ar724x_pci_irq_init(void) +static void __init ar724x_pci_irq_init(int irq) { void __iomem *base = ar724x_pci_ctrl_base; u32 t; @@ -345,10 +345,10 @@ static void __init ar724x_pci_irq_init(void) irq_set_chip_and_handler(i, &ar724x_pci_irq_chip, handle_level_irq); - irq_set_chained_handler(AR71XX_CPU_IRQ_IP2, ar724x_pci_irq_handler); + irq_set_chained_handler(irq, ar724x_pci_irq_handler); } -int __init ar724x_pcibios_init(void) +int __init ar724x_pcibios_init(int irq) { int ret = -ENOMEM; @@ -373,7 +373,7 @@ int __init ar724x_pcibios_init(void) goto err_unmap_ctrl; ar724x_pci_fixup_enable = 1; - ar724x_pci_irq_init(); + ar724x_pci_irq_init(irq); register_pci_controller(&ar724x_pci_controller); return 0;