diff options
author | Lorenzo Pieralisi <[email protected]> | 2019-08-09 12:03:12 +0100 |
---|---|---|
committer | Will Deacon <[email protected]> | 2019-08-09 17:51:39 +0100 |
commit | 9ffeb6d08c3a4bbd7b1e33711b241f511e2ded79 (patch) | |
tree | cd3d6211180de96c446af4cc90b62226f18bb576 /drivers/usb/cdns3/cdns3-ti.c | |
parent | 788961462f3471617749edf10d0fcafad410d2bb (diff) |
PSCI: cpuidle: Refactor CPU suspend power_state parameter handling
Current PSCI code handles idle state entry through the
psci_cpu_suspend_enter() API, that takes an idle state index as a
parameter and convert the index into a previously initialized
power_state parameter before calling the PSCI.CPU_SUSPEND() with it.
This is unwieldly, since it forces the PSCI firmware layer to keep track
of power_state parameter for every idle state so that the
index->power_state conversion can be made in the PSCI firmware layer
instead of the CPUidle driver implementations.
Move the power_state handling out of drivers/firmware/psci
into the respective ACPI/DT PSCI CPUidle backends and convert
the psci_cpu_suspend_enter() API to get the power_state
parameter as input, which makes it closer to its firmware
interface PSCI.CPU_SUSPEND() API.
A notable side effect is that the PSCI ACPI/DT CPUidle backends
now can directly handle (and if needed update) power_state
parameters before handing them over to the PSCI firmware
interface to trigger PSCI.CPU_SUSPEND() calls.
Signed-off-by: Lorenzo Pieralisi <[email protected]>
Acked-by: Daniel Lezcano <[email protected]>
Reviewed-by: Ulf Hansson <[email protected]>
Reviewed-by: Sudeep Holla <[email protected]>
Cc: Will Deacon <[email protected]>
Cc: Ulf Hansson <[email protected]>
Cc: Sudeep Holla <[email protected]>
Cc: Daniel Lezcano <[email protected]>
Cc: Catalin Marinas <[email protected]>
Cc: Mark Rutland <[email protected]>
Cc: "Rafael J. Wysocki" <[email protected]>
Signed-off-by: Will Deacon <[email protected]>
Diffstat (limited to 'drivers/usb/cdns3/cdns3-ti.c')
0 files changed, 0 insertions, 0 deletions