Merge to Fedora kernel-2.6.18-1.2224_FC5 patched with stable patch-2.6.18.1-vs2.0...
[linux-2.6.git] / arch / ppc / boot / simple / head.S
index cb95484..1b4d7b1 100644 (file)
@@ -1,6 +1,4 @@
 /*
- * arch/ppc/boot/simple/head.S
- *
  * Initial board bringup code for many different boards.
  *
  * Author: Tom Rini
@@ -13,7 +11,6 @@
  * or implied.
  */
 
-#include <linux/config.h>
 #include <asm/reg.h>
 #include <asm/cache.h>
 #include <asm/ppc_asm.h>
@@ -52,12 +49,12 @@ start_:
         */
        li      r4,0x0000
        isync
-       mtspr   HID0,r4
+       mtspr   SPRN_HID0,r4
        sync
        isync
 #endif
 
-#if defined(CONFIG_MBX) || defined(CONFIG_RPX6) || defined(CONFIG_PPC_PREP)
+#if defined(CONFIG_MBX) || defined(CONFIG_RPX8260) || defined(CONFIG_PPC_PREP)
        mr      r29,r3  /* On the MBX860, r3 is the board info pointer.
                         * On the RPXSUPER, r3 points to the NVRAM
                         * configuration keys.
@@ -65,6 +62,13 @@ start_:
                         */
 #endif
 
+#if defined(CONFIG_XILINX_VIRTEX_4_FX)
+       /* PPC errata 213: only for Virtex-4 FX */
+       mfccr0  0
+       oris    0,0,0x50000000@h
+       mtccr0  0
+#endif
+
        mflr    r3      /* Save our actual starting address. */
 
        /* The following functions we call must not modify r3 or r4.....
@@ -120,26 +124,12 @@ haveOF:
        mtspr   SPRN_DER,r4
 #endif
 
-#ifdef CONFIG_REDWOOD_4
-       /* All of this Redwood 4 stuff will soon disappear when the
-        * boot rom is straightened out.
-        */
-       mr      r29, r3         /* Easier than changing the other code */
-       bl      HdwInit
-       mr      r3, r29
-#endif
-
-#if defined(CONFIG_MBX) || defined(CONFIG_RPX6) || defined(CONFIG_PPC_PREP)
+#if defined(CONFIG_MBX) || defined(CONFIG_RPX8260) || defined(CONFIG_PPC_PREP)
        mr      r4,r29  /* put the board info pointer where the relocate
                         * routine will find it
                         */
 #endif
 
-#ifdef CONFIG_EV64260
-       /* Move 64260's base regs & CS window for external UART */
-       bl      ev64260_init
-#endif
-
        /* Get the load address.
        */
        subi    r3, r3, 4       /* Get the actual IP, not NIP */