Commit b3f8b927 authored by Robin Getz's avatar Robin Getz Committed by Bryan Wu

Blackfin arch: the load address is not safe to point to as a workaround for ANOMALY 05000281

Now that we have moved head.S into the init section, the load
address is not safe to point to as a workaround for ANOMALY 05000281
Signed-off-by: default avatarRobin Getz <robin.getz@analog.com>
Signed-off-by: default avatarBryan Wu <bryan.wu@analog.com>
parent b76f9876
...@@ -52,6 +52,15 @@ ...@@ -52,6 +52,15 @@
# define EX_SCRATCH_REG CYCLES # define EX_SCRATCH_REG CYCLES
#endif #endif
#if ANOMALY_05000281
ENTRY(_safe_speculative_execution)
NOP;
NOP;
NOP;
jump _safe_speculative_execution;
ENDPROC(_safe_speculative_execution)
#endif
#ifdef CONFIG_EXCPT_IRQ_SYSC_L1 #ifdef CONFIG_EXCPT_IRQ_SYSC_L1
.section .l1.text .section .l1.text
#else #else
...@@ -685,8 +694,8 @@ ENTRY(_return_from_int) ...@@ -685,8 +694,8 @@ ENTRY(_return_from_int)
[p0] = p1; [p0] = p1;
csync; csync;
#if ANOMALY_05000281 #if ANOMALY_05000281
r0.l = lo(CONFIG_BOOT_LOAD); r0.l = _safe_speculative_execution;
r0.h = hi(CONFIG_BOOT_LOAD); r0.h = _safe_speculative_execution;
reti = r0; reti = r0;
#endif #endif
r0 = 0x801f (z); r0 = 0x801f (z);
...@@ -699,8 +708,8 @@ ENDPROC(_return_from_int) ...@@ -699,8 +708,8 @@ ENDPROC(_return_from_int)
ENTRY(_lower_to_irq14) ENTRY(_lower_to_irq14)
#if ANOMALY_05000281 #if ANOMALY_05000281
r0.l = lo(CONFIG_BOOT_LOAD); r0.l = _safe_speculative_execution;
r0.h = hi(CONFIG_BOOT_LOAD); r0.h = _safe_speculative_execution;
reti = r0; reti = r0;
#endif #endif
r0 = 0x401f; r0 = 0x401f;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment