From 518075fc6ae8a4420b937009130e70cfdb7083b8 Mon Sep 17 00:00:00 2001 From: Michal Simek Date: Mon, 7 Feb 2011 10:33:50 +0100 Subject: microblaze: Fix msr handling in interrupt_handler Fix ancient code which worked with MSR in a bad way. Use rtid instruction which enable IRQs and jump. Signed-off-by: Michal Simek --- arch/microblaze/cpu/irq.S | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) (limited to 'arch/microblaze') diff --git a/arch/microblaze/cpu/irq.S b/arch/microblaze/cpu/irq.S index 47bba36f21..8c76a73e95 100644 --- a/arch/microblaze/cpu/irq.S +++ b/arch/microblaze/cpu/irq.S @@ -60,7 +60,6 @@ _interrupt_handler: addik r1, r1, -124 brlid r15, interrupt_handler nop - nop addik r1, r1, 124 lwi r31, r1, -120 lwi r30, r1, -116 @@ -93,22 +92,6 @@ _interrupt_handler: lwi r3, r1, -8 lwi r2, r1, -4 - /* enable_interrupt */ -#ifdef XILINX_USE_MSR_INSTR - msrset r0, 2 -#else - /* FIXME unstable in stressed mode - two irqs */ - nop - addi r1, r1, -4 - swi r12, r1, 0 - mfs r12, rmsr - ori r12, r12, 2 - mts rmsr, r12 - lwi r12, r1, 0 - addi r1, r1, 4 - nop -#endif - bra r14 - nop + rtid r14, 0 nop .size _interrupt_handler,.-_interrupt_handler -- cgit v1.2.1