diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2016-06-06 23:28:33 +0200 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2016-07-24 12:39:59 +0200 |
commit | 7bf0d5e8e643a05de2cca699ac29903b19010cc1 (patch) | |
tree | 96e94eade7a71eeca50a67e5e52dc26f598844a1 /arch/mips/lantiq | |
parent | f0bbe4dc5ce2dd610e1ec7dd3f428bb5670f9878 (diff) | |
download | linux-7bf0d5e8e643a05de2cca699ac29903b19010cc1.tar.bz2 |
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>
Diffstat (limited to 'arch/mips/lantiq')
-rw-r--r-- | arch/mips/lantiq/irq.c | 2 |
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 = <q_eiu_type; - irq_set_chip_and_handler(hw, chip, handle_level_irq); + irq_set_chip_and_handler(irq, chip, handle_level_irq); return 0; } |