diff options
Diffstat (limited to 'arch/blackfin/mach-common/entry.S')
-rw-r--r-- | arch/blackfin/mach-common/entry.S | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/arch/blackfin/mach-common/entry.S b/arch/blackfin/mach-common/entry.S index 8eb0a902348..7d0368772cd 100644 --- a/arch/blackfin/mach-common/entry.S +++ b/arch/blackfin/mach-common/entry.S @@ -181,6 +181,12 @@ ENTRY(_ex_single_step) _return_from_exception: DEBUG_START_HWTRACE +#ifdef ANOMALY_05000257 + R7=LC0; + LC0=R7; + R7=LC1; + LC1=R7; +#endif (R7:6,P5:4) = [sp++]; ASTAT = [sp++]; sp = retn; @@ -706,6 +712,11 @@ _schedule_and_signal_from_int: p1.h = _evt_system_call; [p0] = p1; csync; + + /* Set orig_p0 to -1 to indicate this isn't the end of a syscall. */ + r0 = -1 (x); + [sp + PT_ORIG_P0] = r0; + p1 = rets; [sp + PT_RESERVED] = p1; |