diff options
author | Jiri Kosina <jkosina@suse.cz> | 2010-09-24 14:03:37 +0200 |
---|---|---|
committer | Jiri Kosina <jkosina@suse.cz> | 2010-09-24 14:03:37 +0200 |
commit | 73e6d6c6467771838c1fc6949e6768a12ed72464 (patch) | |
tree | 94dd60891869a0a275cd332c4e675cf0b101fcfa /arch/powerpc/kernel/head_64.S | |
parent | 12e5272585901217e919da810c801e5084ee0cb1 (diff) | |
parent | a850ea30374ebed32a0724742601861853fde869 (diff) | |
download | kernel_samsung_smdk4412-73e6d6c6467771838c1fc6949e6768a12ed72464.zip kernel_samsung_smdk4412-73e6d6c6467771838c1fc6949e6768a12ed72464.tar.gz kernel_samsung_smdk4412-73e6d6c6467771838c1fc6949e6768a12ed72464.tar.bz2 |
Merge branch 'master' into upstream
Diffstat (limited to 'arch/powerpc/kernel/head_64.S')
-rw-r--r-- | arch/powerpc/kernel/head_64.S | 18 |
1 files changed, 12 insertions, 6 deletions
diff --git a/arch/powerpc/kernel/head_64.S b/arch/powerpc/kernel/head_64.S index 844a44b..c571cd3 100644 --- a/arch/powerpc/kernel/head_64.S +++ b/arch/powerpc/kernel/head_64.S @@ -572,15 +572,21 @@ __secondary_start: /* Set thread priority to MEDIUM */ HMT_MEDIUM - /* Do early setup for that CPU (stab, slb, hash table pointer) */ - bl .early_setup_secondary - /* Initialize the kernel stack. Just a repeat for iSeries. */ LOAD_REG_ADDR(r3, current_set) sldi r28,r24,3 /* get current_set[cpu#] */ - ldx r1,r3,r28 - addi r1,r1,THREAD_SIZE-STACK_FRAME_OVERHEAD - std r1,PACAKSAVE(r13) + ldx r14,r3,r28 + addi r14,r14,THREAD_SIZE-STACK_FRAME_OVERHEAD + std r14,PACAKSAVE(r13) + + /* Do early setup for that CPU (stab, slb, hash table pointer) */ + bl .early_setup_secondary + + /* + * setup the new stack pointer, but *don't* use this until + * translation is on. + */ + mr r1, r14 /* Clear backchain so we get nice backtraces */ li r7,0 |