Merge branch 'master' of git://git.denx.de/u-boot
[platform/kernel/u-boot.git] / arch / arm / mach-mvebu / lowlevel_spl.S
index 69da7fe..2e2181e 100644 (file)
@@ -5,10 +5,26 @@
 #include <config.h>
 #include <linux/linkage.h>
 
+#ifdef CONFIG_MVEBU_BOOTROM_UARTBOOT
 ENTRY(save_boot_params)
+       stmfd   sp!, {r0 - r12, lr}     /* @ save registers on stack */
+       ldr     r12, =CONFIG_SPL_BOOTROM_SAVE
+       str     sp, [r12]
        b       save_boot_params_ret
 ENDPROC(save_boot_params)
 
+ENTRY(return_to_bootrom)
+       ldr     r12, =CONFIG_SPL_BOOTROM_SAVE
+       ldr     sp, [r12]
+       mov     r0, #0x0                /* @ return value: 0x0 NO_ERR */
+       ldmfd   sp!, {r0 - r12, pc}     /* @ restore regs and return */
+ENDPROC(return_to_bootrom)
+#else
+ENTRY(save_boot_params)
+       b       save_boot_params_ret
+ENDPROC(save_boot_params)
+#endif
+
 /*
  * cache_inv - invalidate Cache line
  * r0 - dest