summaryrefslogtreecommitdiffstats
path: root/arch/mips
diff options
context:
space:
mode:
authorThomas Koeller <thomas.koeller@baslerweb.com>2008-02-11 23:42:12 +0100
committerRalf Baechle <ralf@linux-mips.org>2008-02-19 18:01:31 +0100
commitc42d95d6c49ce9c678a9d10aeb3f526c850d66dc (patch)
tree5151123b8b0f71703ce16343c4042819d8abb575 /arch/mips
parent[MIPS] Handle I-cache coherency in flush_cache_range() (diff)
downloadlinux-c42d95d6c49ce9c678a9d10aeb3f526c850d66dc.tar.xz
linux-c42d95d6c49ce9c678a9d10aeb3f526c850d66dc.zip
[MIPS] Fix broken rm7000/rm9000 interrupt handling
Properly acknowledge RM7K and RM9K interrupts. Before this, interrupts were permanently masked after their first occurrence, making them non-functional. Signed-off-by: Thomas Koeller <thomas.koeller@baslerweb.com> Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips')
-rw-r--r--arch/mips/kernel/irq-rm7000.c1
-rw-r--r--arch/mips/kernel/irq-rm9000.c1
2 files changed, 2 insertions, 0 deletions
diff --git a/arch/mips/kernel/irq-rm7000.c b/arch/mips/kernel/irq-rm7000.c
index 971adf6ef4f4..fb50cc78b28b 100644
--- a/arch/mips/kernel/irq-rm7000.c
+++ b/arch/mips/kernel/irq-rm7000.c
@@ -33,6 +33,7 @@ static struct irq_chip rm7k_irq_controller = {
.mask = mask_rm7k_irq,
.mask_ack = mask_rm7k_irq,
.unmask = unmask_rm7k_irq,
+ .eoi = unmask_rm7k_irq
};
void __init rm7k_cpu_irq_init(void)
diff --git a/arch/mips/kernel/irq-rm9000.c b/arch/mips/kernel/irq-rm9000.c
index 7b04583bd800..ed9febe63d72 100644
--- a/arch/mips/kernel/irq-rm9000.c
+++ b/arch/mips/kernel/irq-rm9000.c
@@ -75,6 +75,7 @@ static struct irq_chip rm9k_irq_controller = {
.mask = mask_rm9k_irq,
.mask_ack = mask_rm9k_irq,
.unmask = unmask_rm9k_irq,
+ .eoi = unmask_rm9k_irq
};
static struct irq_chip rm9k_perfcounter_irq = {