summaryrefslogtreecommitdiff
path: root/lib/psci
diff options
context:
space:
mode:
authorRoberto Vargas <roberto.vargas@arm.com>2017-09-04 16:49:41 +0100
committerRoberto Vargas <roberto.vargas@arm.com>2017-09-06 14:48:15 +0100
commit216e58a31288bd25802d280c81a0e8d01b3b11d1 (patch)
treeaf8e7f2bcb6b3601fe20c71528ac586c8cce95ba /lib/psci
parent942ee0d8cf936387c5e7891237e5fb0d58d7d250 (diff)
Reduce time lock in psci_do_cpu_off
psci_set_power_off_state only initializes a local variable, so there isn't any reason why it should be done while the lock is held. Change-Id: I1c62f4cd5d860d102532e5a5350152180d41d127 Signed-off-by: Roberto Vargas <roberto.vargas@arm.com>
Diffstat (limited to 'lib/psci')
-rw-r--r--lib/psci/psci_off.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/lib/psci/psci_off.c b/lib/psci/psci_off.c
index e7fb6532..231deea2 100644
--- a/lib/psci/psci_off.c
+++ b/lib/psci/psci_off.c
@@ -49,6 +49,9 @@ int psci_do_cpu_off(unsigned int end_pwrlvl)
*/
assert(psci_plat_pm_ops->pwr_domain_off);
+ /* Construct the psci_power_state for CPU_OFF */
+ psci_set_power_off_state(&state_info);
+
/*
* This function acquires the lock corresponding to each power
* level so that by the time all locks are taken, the system topology
@@ -68,9 +71,6 @@ int psci_do_cpu_off(unsigned int end_pwrlvl)
goto exit;
}
- /* Construct the psci_power_state for CPU_OFF */
- psci_set_power_off_state(&state_info);
-
/*
* This function is passed the requested state info and
* it returns the negotiated state info for each power level upto