From 42d9b3aaf473a1e01475a020644b504ecc3d4443 Mon Sep 17 00:00:00 2001 From: Jan Kiszka Date: Sun, 17 May 2020 10:21:09 +0200 Subject: [PATCH] ti: k3: common: Implement stub system_off PSCI demands that SYSTEM_OFF must not return. While it seems like a generic ATF bug that this is possible when a platform does not Implement a corresponding handler, let's do that here until it's addressed differently. Signed-off-by: Jan Kiszka Change-Id: I4c08948b18bbfdc3a24214f2ae0fbad9e017ada1 --- plat/ti/k3/common/k3_psci.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/plat/ti/k3/common/k3_psci.c b/plat/ti/k3/common/k3_psci.c index d6ed7667e..050074007 100644 --- a/plat/ti/k3/common/k3_psci.c +++ b/plat/ti/k3/common/k3_psci.c @@ -203,6 +203,13 @@ void k3_pwr_domain_on_finish(const psci_power_state_t *target_state) k3_gic_cpuif_enable(); } +static void __dead2 k3_system_off(void) +{ + ERROR("System Off: operation not handled.\n"); + while (true) + wfi(); +} + static void __dead2 k3_system_reset(void) { /* Send the system reset request to system firmware */ @@ -232,6 +239,7 @@ static const plat_psci_ops_t k3_plat_psci_ops = { .pwr_domain_on = k3_pwr_domain_on, .pwr_domain_off = k3_pwr_domain_off, .pwr_domain_on_finish = k3_pwr_domain_on_finish, + .system_off = k3_system_off, .system_reset = k3_system_reset, .validate_power_state = k3_validate_power_state, .validate_ns_entrypoint = k3_validate_ns_entrypoint