ARM: tegra: power: Support CPU rail early startup
authorAlex Frid <afrid@nvidia.com>
Fri, 16 Aug 2013 02:03:07 +0000 (19:03 -0700)
committerDan Willemsen <dwillemsen@nvidia.com>
Sat, 14 Sep 2013 20:41:56 +0000 (13:41 -0700)
commit3b6ed5e6779109c1c53cd8c856411d407497ba9e
tree08f7ab7faca91006c1f930f1319e38698f4a72af
parent7fce58a4fee59eef6837480884602a18e25abae1
ARM: tegra: power: Support CPU rail early startup

Added an option for cluster switch procedure to turn CPU rail ON
via direct access to PMC registers before disabling interrupts,
and then continue scheduler execution while the rail is ramping up.

RAM repair is executed in s/w as well after rail ramp is done. Only
non-CPU partition is power-gated/un-gated by flow controller in the
atomic section. However, rail ramp in this case is serialized with
CPU save context. Hence the trade-off: early startup option reduces
interrupt disabled time during cluster switch, but increases overall
cluster switch time.

Bug 1351735

Change-Id: I5ff9afb2aa6b27b9aa4b2318ee2740dee4908e2f
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/262864
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Bo Yan <byan@nvidia.com>
arch/arm/mach-tegra/pm-t3.c
arch/arm/mach-tegra/pm.c
arch/arm/mach-tegra/pm.h