diff options
Diffstat (limited to 'arch/mips/kernel/irq_cpu.c')
| -rw-r--r-- | arch/mips/kernel/irq_cpu.c | 14 | 
1 files changed, 6 insertions, 8 deletions
diff --git a/arch/mips/kernel/irq_cpu.c b/arch/mips/kernel/irq_cpu.c index 6e71b284f6c9..191eb52228c4 100644 --- a/arch/mips/kernel/irq_cpu.c +++ b/arch/mips/kernel/irq_cpu.c @@ -103,14 +103,12 @@ void __init mips_cpu_irq_init(void)  	clear_c0_status(ST0_IM);  	clear_c0_cause(CAUSEF_IP); -	/* -	 * Only MT is using the software interrupts currently, so we just -	 * leave them uninitialized for other processors. -	 */ -	if (cpu_has_mipsmt) -		for (i = irq_base; i < irq_base + 2; i++) -			irq_set_chip_and_handler(i, &mips_mt_cpu_irq_controller, -						 handle_percpu_irq); +	/* Software interrupts are used for MT/CMT IPI */ +	for (i = irq_base; i < irq_base + 2; i++) +		irq_set_chip_and_handler(i, cpu_has_mipsmt ? +					 &mips_mt_cpu_irq_controller : +					 &mips_cpu_irq_controller, +					 handle_percpu_irq);  	for (i = irq_base + 2; i < irq_base + 8; i++)  		irq_set_chip_and_handler(i, &mips_cpu_irq_controller,  |