Subject: [PATCH][PPC32] Fix mv64x60 register relocation bug in bootwrapper

From: "Mark A. Greer" <[email-masked]>
Date: Tue, 08 Feb 2005 13:59:33 -0700

The gt64260 looks at the highest 20 bits while the mv64[34]60 looks at 
only the highest 16 bits when determining the base address for the 
bridge's registers.  This patch adds support for both.

Please apply.

Signed-off-by: Nate Case <[email-masked]>
Signed-off-by: Mark A. Greer <[email-masked]>
--
diff -Nru a/arch/ppc/boot/simple/misc-mv64x60.S b/arch/ppc/boot/simple/misc-mv64x60.S
--- a/arch/ppc/boot/simple/misc-mv64x60.S	2005-02-08 13:55:06 -07:00
+++ b/arch/ppc/boot/simple/misc-mv64x60.S	2005-02-08 13:55:06 -07:00
@@ -32,7 +32,11 @@
 #if (CONFIG_MV64X60_NEW_BASE != CONFIG_MV64X60_BASE)
 move_base:
 	li	r20,0
+#ifdef CONFIG_GT64260
 	li	r23,20
+#else /* Must be mv64[34]60 which uses top 16 bits */
+	li	r23,16
+#endif
 
 	/* Relocate bridge's regs */
 	addis	r25,0,CONFIG_MV64X60_BASE@h