[U-Boot] [PATCH] microblaze: Fix msr handling in interrupt_handler
Michal Simek
monstr at monstr.eu
Mon Feb 7 10:39:11 CET 2011
Fix ancient code which worked with MSR in a bad way.
Use rtid instruction which enable IRQs and jump.
Signed-off-by: Michal Simek <monstr at monstr.eu>
---
arch/microblaze/cpu/irq.S | 19 +------------------
1 files changed, 1 insertions(+), 18 deletions(-)
diff --git a/arch/microblaze/cpu/irq.S b/arch/microblaze/cpu/irq.S
index 47bba36..8c76a73 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
--
1.5.5.6
More information about the U-Boot
mailing list