Commit bda951ba authored by Andrew Morton's avatar Andrew Morton Committed by Linus Torvalds

[PATCH] PPC32: Fix thinko in arch/ppc/boot/simple/relocate.S

From: Tom Rini <trini@kernel.crashing.org>

When I was updating ppc/boot/simple/relocate.S to work on PPC_PREP systems, I
in advertantly broke 4xx systems.  On classic PPC, the first three
instructions are nops, of which the first two can be overwritten.  This is
not true of 4xx (or 8xx, but that's not working right now anyhow).  The
following is needed to fix this.
parent e6b03c0b
...@@ -196,9 +196,9 @@ start_ldr: ...@@ -196,9 +196,9 @@ start_ldr:
/* /*
* Start at the begining. * Start at the begining.
*/ */
#ifdef CONFIG_PPC_MULTIPLATFORM
li r9,0xc li r9,0xc
mtlr r9 mtlr r9
#ifdef CONFIG_PPC_MULTIPLATFORM
/* tell kernel we're prep, by putting 0xdeadc0de at KERNELLOAD, /* tell kernel we're prep, by putting 0xdeadc0de at KERNELLOAD,
* and tell the kernel to start on the 4th instruction since we * and tell the kernel to start on the 4th instruction since we
* overwrite the first 3 sometimes (which are 'nop'). * overwrite the first 3 sometimes (which are 'nop').
...@@ -207,6 +207,9 @@ start_ldr: ...@@ -207,6 +207,9 @@ start_ldr:
ori r10,r10,0xdeadc0de@l ori r10,r10,0xdeadc0de@l
li r9,0 li r9,0
stw r10,0(r9) stw r10,0(r9)
#else
li r9,0
mtlr r9
#endif #endif
blr blr
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment