diff options
Diffstat (limited to 'lib/psci/psci.c')
-rw-r--r-- | lib/psci/psci.c | 29 |
1 files changed, 28 insertions, 1 deletions
diff --git a/lib/psci/psci.c b/lib/psci/psci.c index d761747..682ad5c 100644 --- a/lib/psci/psci.c +++ b/lib/psci/psci.c @@ -97,7 +97,35 @@ int32_t tftf_psci_cpu_off(void) smc64_ret_values ret_vals; ret_vals = tftf_smc64(&args); + return ret_vals.ret0; +} + +u_register_t tftf_psci_stat_residency(u_register_t target_cpu, + uint32_t power_state) +{ + smc64_args args = { + SMC_PSCI_STAT_RESIDENCY64, + target_cpu, + power_state, + }; + smc64_ret_values ret_vals; + + ret_vals = tftf_smc64(&args); + return ret_vals.ret0; +} + +u_register_t tftf_psci_stat_count(u_register_t target_cpu, + uint32_t power_state) +{ + smc64_args args = { + SMC_PSCI_STAT_COUNT64, + target_cpu, + power_state, + }; + smc64_ret_values ret_vals; + + ret_vals = tftf_smc64(&args); return ret_vals.ret0; } @@ -307,4 +335,3 @@ unsigned int tftf_get_psci_version(void) return ret.ret0; } - |