aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/kernel/entry_32.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/kernel/entry_32.S')
-rw-r--r--arch/powerpc/kernel/entry_32.S8
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/powerpc/kernel/entry_32.S b/arch/powerpc/kernel/entry_32.S
index 3a05e9f93d42..888a364043a8 100644
--- a/arch/powerpc/kernel/entry_32.S
+++ b/arch/powerpc/kernel/entry_32.S
@@ -147,6 +147,7 @@ transfer_to_handler:
147 lwz r12,TI_LOCAL_FLAGS(r9) 147 lwz r12,TI_LOCAL_FLAGS(r9)
148 mtcrf 0x01,r12 148 mtcrf 0x01,r12
149 bt- 31-TLF_NAPPING,4f 149 bt- 31-TLF_NAPPING,4f
150 bt- 31-TLF_SLEEPING,7f
150#endif /* CONFIG_6xx */ 151#endif /* CONFIG_6xx */
151 .globl transfer_to_handler_cont 152 .globl transfer_to_handler_cont
152transfer_to_handler_cont: 153transfer_to_handler_cont:
@@ -164,6 +165,13 @@ transfer_to_handler_cont:
1644: rlwinm r12,r12,0,~_TLF_NAPPING 1654: rlwinm r12,r12,0,~_TLF_NAPPING
165 stw r12,TI_LOCAL_FLAGS(r9) 166 stw r12,TI_LOCAL_FLAGS(r9)
166 b power_save_6xx_restore 167 b power_save_6xx_restore
168
1697: rlwinm r12,r12,0,~_TLF_SLEEPING
170 stw r12,TI_LOCAL_FLAGS(r9)
171 lwz r9,_MSR(r11) /* if sleeping, clear MSR.EE */
172 rlwinm r9,r9,0,~MSR_EE
173 lwz r12,_LINK(r11) /* and return to address in LR */
174 b fast_exception_return
167#endif 175#endif
168 176
169/* 177/*