diff options
author | Michal Simek <monstr@monstr.eu> | 2010-06-22 12:00:35 -0400 |
---|---|---|
committer | Michal Simek <monstr@monstr.eu> | 2010-08-04 04:32:20 -0400 |
commit | e7741075b37e2be6693def1ff98487e3aef67874 (patch) | |
tree | 864ee02c000a245ca357b30484c07def30187e5b | |
parent | e5d2af2b96696420865a1644c94a0e79e34c6035 (diff) |
microblaze: Do not mix register saving and mode setting
Separate reg saving and mode setting.
Signed-off-by: Michal Simek <monstr@monstr.eu>
-rw-r--r-- | arch/microblaze/kernel/entry.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/microblaze/kernel/entry.S b/arch/microblaze/kernel/entry.S index cf4a0aa35c0e..8f6b4eea4a6f 100644 --- a/arch/microblaze/kernel/entry.S +++ b/arch/microblaze/kernel/entry.S | |||
@@ -293,9 +293,9 @@ | |||
293 | tophys(r1,r1); \ | 293 | tophys(r1,r1); \ |
294 | addik r1, r1, -STATE_SAVE_SIZE; /* Make room on the stack. */\ | 294 | addik r1, r1, -STATE_SAVE_SIZE; /* Make room on the stack. */\ |
295 | SAVE_REGS \ | 295 | SAVE_REGS \ |
296 | swi r0, r1, PTO + PT_MODE; /* Was in user-mode. */ \ | ||
297 | lwi r11, r0, TOPHYS(PER_CPU(ENTRY_SP)); \ | 296 | lwi r11, r0, TOPHYS(PER_CPU(ENTRY_SP)); \ |
298 | swi r11, r1, PTO+PT_R1; /* Store user SP. */ \ | 297 | swi r11, r1, PTO+PT_R1; /* Store user SP. */ \ |
298 | swi r0, r1, PTO + PT_MODE; /* Was in user-mode. */ \ | ||
299 | /* MS: I am clearing UMS even in case when I come from kernel space */ \ | 299 | /* MS: I am clearing UMS even in case when I come from kernel space */ \ |
300 | clear_ums; \ | 300 | clear_ums; \ |
301 | 2: lwi CURRENT_TASK, r0, TOPHYS(PER_CPU(CURRENT_SAVE)); | 301 | 2: lwi CURRENT_TASK, r0, TOPHYS(PER_CPU(CURRENT_SAVE)); |