aboutsummaryrefslogtreecommitdiffstats
path: root/arch/powerpc/platforms/iseries/exception.S
diff options
context:
space:
mode:
Diffstat (limited to 'arch/powerpc/platforms/iseries/exception.S')
-rw-r--r--arch/powerpc/platforms/iseries/exception.S12
1 files changed, 10 insertions, 2 deletions
diff --git a/arch/powerpc/platforms/iseries/exception.S b/arch/powerpc/platforms/iseries/exception.S
index 5381038f0881..c775cd4b3d6e 100644
--- a/arch/powerpc/platforms/iseries/exception.S
+++ b/arch/powerpc/platforms/iseries/exception.S
@@ -38,11 +38,19 @@
38 38
39 .globl system_reset_iSeries 39 .globl system_reset_iSeries
40system_reset_iSeries: 40system_reset_iSeries:
41 mfspr r13,SPRN_SPRG3 /* Get paca address */ 41 mfspr r13,SPRN_SPRG3 /* Get alpaca address */
42 LOAD_REG_IMMEDIATE(r23, alpaca)
43 li r0,ALPACA_SIZE
44 sub r23,r13,r23
45 divdu r23,r23,r0 /* r23 has cpu number */
46 LOAD_REG_IMMEDIATE(r13, paca)
47 mulli r0,r23,PACA_SIZE
48 add r13,r13,r0
49 mtspr SPRN_SPRG3,r13 /* Save it away for the future */
42 mfmsr r24 50 mfmsr r24
43 ori r24,r24,MSR_RI 51 ori r24,r24,MSR_RI
44 mtmsrd r24 /* RI on */ 52 mtmsrd r24 /* RI on */
45 lhz r24,PACAPACAINDEX(r13) /* Get processor # */ 53 mr r24,r23
46 cmpwi 0,r24,0 /* Are we processor 0? */ 54 cmpwi 0,r24,0 /* Are we processor 0? */
47 bne 1f 55 bne 1f
48 b .__start_initialization_iSeries /* Start up the first processor */ 56 b .__start_initialization_iSeries /* Start up the first processor */