powerpc: Fix 32-bit SMP boot on CHRP
prom_init was changed to take a new argument, the address where the kernel is loaded, which is now used to copy the SMP spin loop down before use. However, only head_64.S was adapted to pass this new value, not head_32.S, thus breaking SMP boot on 32-bit SMP CHRP machines. Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
This commit is contained in:
parent
7b6b574ca7
commit
2bda347bc5
|
@ -110,6 +110,12 @@ __start:
|
||||||
#ifdef CONFIG_PPC_MULTIPLATFORM
|
#ifdef CONFIG_PPC_MULTIPLATFORM
|
||||||
cmpwi 0,r5,0
|
cmpwi 0,r5,0
|
||||||
beq 1f
|
beq 1f
|
||||||
|
|
||||||
|
/* find out where we are now */
|
||||||
|
bcl 20,31,$+4
|
||||||
|
0: mflr r8 /* r8 = runtime addr here */
|
||||||
|
addis r8,r8,(_stext - 0b)@ha
|
||||||
|
addi r8,r8,(_stext - 0b)@l /* current runtime base addr */
|
||||||
bl prom_init
|
bl prom_init
|
||||||
trap
|
trap
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue