rockchip: support the suspend/resume for rk3399
This patch adds to support the suspend/resume for rk3399 SoCs.
Signed-off-by: Shengfei xu <xsf@rock-chips.com>
Signed-off-by: Caesar Wang <wxt@rock-chips.com>
diff --git a/plat/rockchip/common/aarch64/plat_helpers.S b/plat/rockchip/common/aarch64/plat_helpers.S
index a90dcd7..1bbb614 100644
--- a/plat/rockchip/common/aarch64/plat_helpers.S
+++ b/plat/rockchip/common/aarch64/plat_helpers.S
@@ -189,6 +189,7 @@
* cpus online or resume enterpoint
* --------------------------------------------------------------------
*/
+ .align 16
func platform_cpu_warmboot
mrs x0, MPIDR_EL1
and x1, x0, #MPIDR_CPU_MASK
@@ -207,12 +208,6 @@
add x4, x4, x0, lsl #2
ldr w1, [x4]
/* --------------------------------------------------------------------
- * get per cpuup boot addr
- * --------------------------------------------------------------------
- */
- adr x5, cpuson_entry_point
- ldr x2, [x5, x0, lsl #3]
- /* --------------------------------------------------------------------
* check cpuon reason
* --------------------------------------------------------------------
*/
@@ -231,8 +226,15 @@
wfe
b wfe_loop
boot_entry:
- mov w0, #0
- str w0, [x4]
+ mov w1, #0
+ str w1, [x4]
+ /* --------------------------------------------------------------------
+ * get per cpuup boot addr
+ * --------------------------------------------------------------------
+ */
+ adr x5, cpuson_entry_point
+ ldr x2, [x5, x0, lsl #3]
+
br x2
endfunc platform_cpu_warmboot
@@ -248,5 +250,5 @@
.endr
cpuson_flags:
.rept PLATFORM_CORE_COUNT
- .quad 0
+ .word 0
.endr