diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2010-03-05 20:29:29 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2010-03-05 20:29:29 +0000 |
commit | 4403a25f77710503307de13a1c788414a6f27288 (patch) | |
tree | 31158588dcf6435df650e8559b159c512510e9b2 /target | |
parent | c472a7b23d2fe9edc550617a01697e83db8c960b (diff) | |
download | upstream-4403a25f77710503307de13a1c788414a6f27288.tar.gz upstream-4403a25f77710503307de13a1c788414a6f27288.tar.bz2 upstream-4403a25f77710503307de13a1c788414a6f27288.zip |
ar71xx: don't init PCI irqs on the AR7240 if the PCIe subsystem are in reset
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@20007 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r-- | target/linux/ar71xx/files/arch/mips/ar71xx/irq.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/target/linux/ar71xx/files/arch/mips/ar71xx/irq.c b/target/linux/ar71xx/files/arch/mips/ar71xx/irq.c index 212ff12997..13d25c43fd 100644 --- a/target/linux/ar71xx/files/arch/mips/ar71xx/irq.c +++ b/target/linux/ar71xx/files/arch/mips/ar71xx/irq.c @@ -158,8 +158,15 @@ static struct irqaction ar724x_pci_irqaction = { static void __init ar724x_pci_irq_init(void) { + u32 t; int i; + t = ar71xx_reset_rr(AR724X_RESET_REG_RESET_MODULE); + if (t & (AR724X_RESET_PCIE | AR724X_RESET_PCIE_PHY | + AR724X_RESET_PCIE_PHY_SERIAL)) { + return; + } + ar71xx_ip2_irq_handler = ar724x_pci_irq_dispatch; ar724x_pci_wr(AR724X_PCI_REG_INT_MASK, 0); |