aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHauke Mehrtens2016-06-06 23:28:33 +0200
committerRalf Baechle2016-07-24 12:39:59 +0200
commit7bf0d5e8e643a05de2cca699ac29903b19010cc1 (patch)
tree96e94eade7a71eeca50a67e5e52dc26f598844a1
parentf0bbe4dc5ce2dd610e1ec7dd3f428bb5670f9878 (diff)
MIPS: Lantiq: Register IRQ handler for virtual IRQ number
We used the hardware IRQ number to register the IRQ handler and not the virtual one. This probably caused some problems because the hardware IRQ numbers are only unique for each IRQ controller and not in the system. The virtual IRQ number is managed by Linux and unique in the system. This was probably the reason there was a gab of 8 IRQ numbers added before the numbers used for the lantiq IRQ controller. With the current setup the hardware and the virtual IRQ numbers are the same. Reported-by: Thomas Langer <thomas.langer@intel.com> Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de> Acked-by: John Crispin <john@phrozen.org> Cc: thomas.langer@intel.com Cc: linux-mips@linux-mips.org Patchwork: https://patchwork.linux-mips.org/patch/13539/ Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
-rw-r--r--arch/mips/lantiq/irq.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/mips/lantiq/irq.c b/arch/mips/lantiq/irq.c
index bb1c39e0ce4d..7cce277b017f 100644
--- a/arch/mips/lantiq/irq.c
+++ b/arch/mips/lantiq/irq.c
@@ -344,7 +344,7 @@ static int icu_map(struct irq_domain *d, unsigned int irq, irq_hw_number_t hw)
if (hw == ltq_eiu_irq[i])
chip = &ltq_eiu_type;
- irq_set_chip_and_handler(hw, chip, handle_level_irq);
+ irq_set_chip_and_handler(irq, chip, handle_level_irq);
return 0;
}