diff options
Diffstat (limited to 'arch/m32r/kernel')
-rw-r--r-- | arch/m32r/kernel/setup_mappi.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/m32r/kernel/setup_mappi.c b/arch/m32r/kernel/setup_mappi.c index 6b2d77da0683..fe73c9ec611f 100644 --- a/arch/m32r/kernel/setup_mappi.c +++ b/arch/m32r/kernel/setup_mappi.c | |||
@@ -45,7 +45,8 @@ static void mask_and_ack_mappi(unsigned int irq) | |||
45 | 45 | ||
46 | static void end_mappi_irq(unsigned int irq) | 46 | static void end_mappi_irq(unsigned int irq) |
47 | { | 47 | { |
48 | enable_mappi_irq(irq); | 48 | if (!(irq_desc[irq].status & (IRQ_DISABLED | IRQ_INPROGRESS))) |
49 | enable_mappi_irq(irq); | ||
49 | } | 50 | } |
50 | 51 | ||
51 | static unsigned int startup_mappi_irq(unsigned int irq) | 52 | static unsigned int startup_mappi_irq(unsigned int irq) |
@@ -88,7 +89,7 @@ void __init init_IRQ(void) | |||
88 | irq_desc[M32R_IRQ_INT0].chip = &mappi_irq_type; | 89 | irq_desc[M32R_IRQ_INT0].chip = &mappi_irq_type; |
89 | irq_desc[M32R_IRQ_INT0].action = NULL; | 90 | irq_desc[M32R_IRQ_INT0].action = NULL; |
90 | irq_desc[M32R_IRQ_INT0].depth = 1; | 91 | irq_desc[M32R_IRQ_INT0].depth = 1; |
91 | icu_data[M32R_IRQ_INT0].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD10; | 92 | icu_data[M32R_IRQ_INT0].icucr = M32R_ICUCR_IEN|M32R_ICUCR_ISMOD11; |
92 | disable_mappi_irq(M32R_IRQ_INT0); | 93 | disable_mappi_irq(M32R_IRQ_INT0); |
93 | #endif /* CONFIG_M32R_NE2000 */ | 94 | #endif /* CONFIG_M32R_NE2000 */ |
94 | 95 | ||