arm: tegra: power: Add dynamic CPU EDP mechanism
authorDaniel Solomon <daniels@nvidia.com>
Tue, 24 Jul 2012 19:09:03 +0000 (12:09 -0700)
committerDan Willemsen <dwillemsen@nvidia.com>
Sat, 14 Sep 2013 19:14:49 +0000 (12:14 -0700)
commita59a2cafe15f0277b407d0a77d7e79b3d3877a7b
tree4a47f7b2415f8b5b4549d4870d17249199eda62f
parentadb22dc8310e3e04208935a8fb2e998a98843992
arm: tegra: power: Add dynamic CPU EDP mechanism

Add dynamic VDD_CPU EDP. This mechanism calculates EDP frequency
caps based on dynamic power, leakage power, and CPU regulator
current limit.

The formula for this uses temperature, number of cores, and CPU
IDDQ as input. It relies on sets of pre-calculated constants, which
vary per SKU.

This mechanism complements the existing EDP mechanism. At bootup,
chip SKU is read: If a corresponding hardcoded EDP table is found,
this table is used; otherwise, an EDP table is calculated.

Note that the EDP formula used is subject to change, and final sets
of pre-calculated constants still need to be added for each SKU.

Change-Id: I5fb22c6a3da0f0adff21dcdf4950275002927e88
Signed-off-by: Daniel Solomon <daniels@nvidia.com>
Reviewed-on: http://git-master/r/116120
Reviewed-by: Automatic_Commit_Validation_User
Reviewed-by: Diwakar Tundlam <dtundlam@nvidia.com>

Rebase-Id: Rcd73d8b4bd0e5ade35216b63af9da6a6e4ba2ab4
arch/arm/mach-tegra/edp.c