diff options
| -rw-r--r-- | arch/parisc/kernel/irq.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/arch/parisc/kernel/irq.c b/arch/parisc/kernel/irq.c index c0b1affc06a8..0299d63cd112 100644 --- a/arch/parisc/kernel/irq.c +++ b/arch/parisc/kernel/irq.c | |||
| @@ -410,11 +410,13 @@ void __init init_IRQ(void) | |||
| 410 | { | 410 | { |
| 411 | local_irq_disable(); /* PARANOID - should already be disabled */ | 411 | local_irq_disable(); /* PARANOID - should already be disabled */ |
| 412 | mtctl(~0UL, 23); /* EIRR : clear all pending external intr */ | 412 | mtctl(~0UL, 23); /* EIRR : clear all pending external intr */ |
| 413 | claim_cpu_irqs(); | ||
| 414 | #ifdef CONFIG_SMP | 413 | #ifdef CONFIG_SMP |
| 415 | if (!cpu_eiem) | 414 | if (!cpu_eiem) { |
| 415 | claim_cpu_irqs(); | ||
| 416 | cpu_eiem = EIEM_MASK(IPI_IRQ) | EIEM_MASK(TIMER_IRQ); | 416 | cpu_eiem = EIEM_MASK(IPI_IRQ) | EIEM_MASK(TIMER_IRQ); |
| 417 | } | ||
| 417 | #else | 418 | #else |
| 419 | claim_cpu_irqs(); | ||
| 418 | cpu_eiem = EIEM_MASK(TIMER_IRQ); | 420 | cpu_eiem = EIEM_MASK(TIMER_IRQ); |
| 419 | #endif | 421 | #endif |
| 420 | set_eiem(cpu_eiem); /* EIEM : enable all external intr */ | 422 | set_eiem(cpu_eiem); /* EIEM : enable all external intr */ |
