Tegra210: support for cluster idle from the CPU
This patch adds support to enter/exit to/from cluster idle power
state on Tegra210 platforms that do not load BPMP firmware.

The CPU initates the cluster idle sequence on the last standing
CPU, by following these steps:

Entry
-----
* stop other CPUs from waking up
* program the PWM pinmux to tristate for OVR PMIC
* program the flow controller to enter CC6 state
* skip L1 $ flush during cluster power down, as L2 $ is inclusive
  of L1 $ on Cortex-A57 CPUs

Exit
----
* program the PWM pinmux to un-tristate for OVR PMIC
* allow other CPUs to wake up

This patch also makes sure that cluster idle state entry is not
enabled until CL-DVFS is ready.

Change-Id: I54cf31bf72b4a09d9bf9d2baaed6ee5a963c7808
Signed-off-by: Varun Wadekar <vwadekar@nvidia.com>
1 parent a7a63e0 commit 7db077f2e3116cc47d9a146f39555559faef42d7
@Varun Wadekar Varun Wadekar authored on 13 Feb 2018
Showing 3 changed files
View
plat/nvidia/tegra/include/t210/tegra_def.h
View
plat/nvidia/tegra/soc/t210/plat_psci_handlers.c
View
plat/nvidia/tegra/soc/t210/platform_t210.mk