powerpc/85xx: Move INIT_RAM_ADDR physical address to 36-bit space
authoryork <yorksun@freescale.com>
Fri, 2 Jul 2010 22:25:57 +0000 (22:25 +0000)
committerKumar Gala <galak@kernel.crashing.org>
Mon, 26 Jul 2010 18:07:49 +0000 (13:07 -0500)
If 36-bit physical address is used, move the INIT_RAM_ADDR to higher
address. This frees the low 4GB address space for better use.

Signed-off-by: York Sun <yorksun@freescale.com>
arch/powerpc/cpu/mpc85xx/start.S

index b3cb56a5b00da67201667460da4d4e3b970d32b9..3278b109feb56626ddbbf311025a4dfbc524bc5b 100644 (file)
@@ -330,8 +330,18 @@ _start_e500:
        lis     r8,FSL_BOOKE_MAS2(CONFIG_SYS_INIT_RAM_ADDR, 0)@h
        ori     r8,r8,FSL_BOOKE_MAS2(CONFIG_SYS_INIT_RAM_ADDR, 0)@l
 
+#if defined(CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW) && \
+    defined(CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH)
+       lis     r9,FSL_BOOKE_MAS3(CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW, 0,
+                               (MAS3_SX|MAS3_SW|MAS3_SR))@h
+       ori     r9,r9,FSL_BOOKE_MAS3(CONFIG_SYS_INIT_RAM_ADDR_PHYS_LOW, 0,
+                               (MAS3_SX|MAS3_SW|MAS3_SR))@l
+       li      r10,CONFIG_SYS_INIT_RAM_ADDR_PHYS_HIGH
+       mtspr   MAS7,r10
+#else
        lis     r9,FSL_BOOKE_MAS3(CONFIG_SYS_INIT_RAM_ADDR, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@h
        ori     r9,r9,FSL_BOOKE_MAS3(CONFIG_SYS_INIT_RAM_ADDR, 0, (MAS3_SX|MAS3_SW|MAS3_SR))@l
+#endif
 
        mtspr   MAS0,r6
        mtspr   MAS1,r7