summaryrefslogtreecommitdiff
path: root/include/bl31
diff options
context:
space:
mode:
authorSoby Mathew <soby.mathew@arm.com>2016-04-27 14:46:28 +0100
committerSoby Mathew <soby.mathew@arm.com>2016-05-25 14:00:00 +0100
commitac1cc8eb76c39bca445478c2dffa9cd18829cff4 (patch)
tree33c404b8b2af247e8c6883d43dbbba2df03082a6 /include/bl31
parente141aa0357fd4977ba874f4f86874e2cadc73498 (diff)
PSCI: Add pwr_domain_pwr_down_wfi() hook in plat_psci_ops
This patch adds a new optional platform hook `pwr_domain_pwr_down_wfi()` in the plat_psci_ops structure. This hook allows the platform to perform platform specific actions including the wfi invocation to enter powerdown. This hook is invoked by both psci_do_cpu_off() and psci_cpu_suspend_start() functions. The porting-guide.md is also updated for the same. This patch also modifies the `psci_power_down_wfi()` function to invoke `plat_panic_handler` incase of panic instead of the busy while loop. Fixes ARM-Software/tf-issues#375 Change-Id: Iba104469a1445ee8d59fb3a6fdd0a98e7f24dfa3
Diffstat (limited to 'include/bl31')
-rw-r--r--include/bl31/services/psci.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/bl31/services/psci.h b/include/bl31/services/psci.h
index acf07869..95e77809 100644
--- a/include/bl31/services/psci.h
+++ b/include/bl31/services/psci.h
@@ -265,6 +265,8 @@ typedef struct plat_psci_ops {
void (*pwr_domain_on_finish)(const psci_power_state_t *target_state);
void (*pwr_domain_suspend_finish)(
const psci_power_state_t *target_state);
+ void (*pwr_domain_pwr_down_wfi)(
+ const psci_power_state_t *target_state) __dead2;
void (*system_off)(void) __dead2;
void (*system_reset)(void) __dead2;
int (*validate_power_state)(unsigned int power_state,