From: Kever Yang <kever.y...@rock-chips.com>

Rockchip ARM64 SOC will change cpu entry, only fst reset can reset it.

Cc: Jagan Teki <ja...@edgeble.ai>
Signed-off-by: Kever Yang <kever.y...@rock-chips.com>
---
 drivers/sysreset/sysreset_rockchip.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/drivers/sysreset/sysreset_rockchip.c 
b/drivers/sysreset/sysreset_rockchip.c
index f353f9b4c7..17aa191349 100644
--- a/drivers/sysreset/sysreset_rockchip.c
+++ b/drivers/sysreset/sysreset_rockchip.c
@@ -22,7 +22,12 @@ int rockchip_sysreset_request(struct udevice *dev, enum 
sysreset_t type)
 
        switch (type) {
        case SYSRESET_WARM:
+#ifdef CONFIG_ARM64
+               /* Rockchip 64bit SOC need fst reset for cpu reset entry */
+               writel(0xfdb9, cru_base + offset->glb_srst_fst_value);
+#else
                writel(0xeca8, cru_base + offset->glb_srst_snd_value);
+#endif
                break;
        case SYSRESET_COLD:
                writel(0xfdb9, cru_base + offset->glb_srst_fst_value);
-- 
2.44.0

Reply via email to