From 1ffaaec9ec409c4ab57baeda7772f2f3e2ccf4be Mon Sep 17 00:00:00 2001 From: Stephen Wolfe Date: Thu, 29 Mar 2018 12:32:08 -0700 Subject: spd: trusty: pass max affinity level to Trusty During System Suspend, the entire system loses its state. To allow Trusty to save/restore its context and allow its TAs to participate in the suspend process, it needs to look at the max affinity level being suspended. This patch passes the max affinity level to Trusty to enable to do so. Change-Id: If7838dae10c3f5a694baedb15ec56fbad41f2b36 Signed-off-by: Varun Wadekar --- services/spd/trusty/trusty.c | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) (limited to 'services') diff --git a/services/spd/trusty/trusty.c b/services/spd/trusty/trusty.c index 83c14b49..ce942dd2 100644 --- a/services/spd/trusty/trusty.c +++ b/services/spd/trusty/trusty.c @@ -352,32 +352,32 @@ static void trusty_cpu_resume(uint32_t on) } } -static int32_t trusty_cpu_off_handler(u_register_t unused) +static int32_t trusty_cpu_off_handler(u_register_t max_off_lvl) { - trusty_cpu_suspend(1); + trusty_cpu_suspend(max_off_lvl); return 0; } -static void trusty_cpu_on_finish_handler(u_register_t unused) +static void trusty_cpu_on_finish_handler(u_register_t max_off_lvl) { struct trusty_cpu_ctx *ctx = get_trusty_ctx(); if (ctx->saved_sp == NULL) { (void)trusty_init(); } else { - trusty_cpu_resume(1); + trusty_cpu_resume(max_off_lvl); } } -static void trusty_cpu_suspend_handler(u_register_t unused) +static void trusty_cpu_suspend_handler(u_register_t max_off_lvl) { - trusty_cpu_suspend(0); + trusty_cpu_suspend(max_off_lvl); } -static void trusty_cpu_suspend_finish_handler(u_register_t unused) +static void trusty_cpu_suspend_finish_handler(u_register_t max_off_lvl) { - trusty_cpu_resume(0); + trusty_cpu_resume(max_off_lvl); } static const spd_pm_ops_t trusty_pm = { -- cgit v1.2.3