From: Hai Pham <[email protected]>

Extend the stub PSCI implementation with support for R-Car Gen5.
R-Car Gen5 uses different register to perform reset, therefore
add a compile-time conditional. This is __secure code, therefore
the runtime SoC detection parts are not available to it, hence
the compile time conditional.

Signed-off-by: Hai Pham <[email protected]>
Signed-off-by: Marek Vasut <[email protected]> # Tweak commit 
message
---
Cc: Hai Pham <[email protected]>
Cc: Khanh Le <[email protected]>
Cc: Nobuhiro Iwamatsu <[email protected]>
Cc: Paul Barker <[email protected]>
Cc: Simon Glass <[email protected]>
Cc: Tom Rini <[email protected]>
Cc: [email protected]
---
 arch/arm/mach-renesas/psci-rcar64.c | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/arch/arm/mach-renesas/psci-rcar64.c 
b/arch/arm/mach-renesas/psci-rcar64.c
index 459dd55ff45..22c2ee045cc 100644
--- a/arch/arm/mach-renesas/psci-rcar64.c
+++ b/arch/arm/mach-renesas/psci-rcar64.c
@@ -32,7 +32,12 @@ u32 __secure psci_version(void)
 
 void __secure __noreturn psci_system_reset(void)
 {
+#if defined(CONFIG_RCAR_GEN5)
+       writel(RST_KCPROT_DIS, RST_RESKCPROT0);
+       writel(0x1, RST_SWSRES1A);
+#else
        writel(RST_SPRES, RST_SRESCR0);
+#endif
 
        while (1)
                ;
-- 
2.51.0

Reply via email to