aboutsummaryrefslogtreecommitdiffstats
path: root/arch/blackfin/mach-common/entry.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/blackfin/mach-common/entry.S')
-rw-r--r--arch/blackfin/mach-common/entry.S7
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/blackfin/mach-common/entry.S b/arch/blackfin/mach-common/entry.S
index cee54cebbc65..a504c65d9990 100644
--- a/arch/blackfin/mach-common/entry.S
+++ b/arch/blackfin/mach-common/entry.S
@@ -121,10 +121,14 @@ ENTRY(_ex_icplb_miss)
121 (R7:6,P5:4) = [sp++]; 121 (R7:6,P5:4) = [sp++];
122 ASTAT = [sp++]; 122 ASTAT = [sp++];
123 SAVE_ALL_SYS 123 SAVE_ALL_SYS
124 DEBUG_HWTRACE_SAVE(p5, r7)
125#ifdef CONFIG_MPU 124#ifdef CONFIG_MPU
125 /* We must load R1 here, _before_ DEBUG_HWTRACE_SAVE, since that
126 * will change the stack pointer. */
126 R0 = SEQSTAT; 127 R0 = SEQSTAT;
127 R1 = SP; 128 R1 = SP;
129#endif
130 DEBUG_HWTRACE_SAVE(p5, r7)
131#ifdef CONFIG_MPU
128 sp += -12; 132 sp += -12;
129 call _cplb_hdr; 133 call _cplb_hdr;
130 sp += 12; 134 sp += 12;
@@ -191,6 +195,7 @@ ENTRY(_bfin_return_from_exception)
191ENDPROC(_bfin_return_from_exception) 195ENDPROC(_bfin_return_from_exception)
192 196
193ENTRY(_handle_bad_cplb) 197ENTRY(_handle_bad_cplb)
198 DEBUG_HWTRACE_RESTORE(p5, r7)
194 /* To get here, we just tried and failed to change a CPLB 199 /* To get here, we just tried and failed to change a CPLB
195 * so, handle things in trap_c (C code), by lowering to 200 * so, handle things in trap_c (C code), by lowering to
196 * IRQ5, just like we normally do. Since this is not a 201 * IRQ5, just like we normally do. Since this is not a