summaryrefslogtreecommitdiff
path: root/services/std_svc/psci/psci_suspend.c
diff options
context:
space:
mode:
Diffstat (limited to 'services/std_svc/psci/psci_suspend.c')
-rw-r--r--services/std_svc/psci/psci_suspend.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/services/std_svc/psci/psci_suspend.c b/services/std_svc/psci/psci_suspend.c
index 367bb32a..8c6ab6b4 100644
--- a/services/std_svc/psci/psci_suspend.c
+++ b/services/std_svc/psci/psci_suspend.c
@@ -189,8 +189,13 @@ exit:
if (skip_wfi)
return;
- if (is_power_down_state)
- psci_power_down_wfi();
+ if (is_power_down_state) {
+ /* The function calls below must not return */
+ if (psci_plat_pm_ops->pwr_domain_pwr_down_wfi)
+ psci_plat_pm_ops->pwr_domain_pwr_down_wfi(state_info);
+ else
+ psci_power_down_wfi();
+ }
/*
* We will reach here if only retention/standby states have been