]> rtime.felk.cvut.cz Git - sojka/nv-tegra/linux-3.10.git/commit
ARM: tegra: dvfs: Calibrate DFLL tuning threshold
authorAlex Frid <afrid@nvidia.com>
Sat, 5 Apr 2014 01:42:18 +0000 (18:42 -0700)
committerYu-Huan Hsu <yhsu@nvidia.com>
Wed, 9 Apr 2014 20:43:19 +0000 (13:43 -0700)
commit204c3f5822d8f4be978994b19e8513d35e8fdd55
tree09aec60f71bdb5ab7011370300e1fe9b3c363fe0
parent8512300b08fe11c66494cbbdd64f39379091a3aa
ARM: tegra: dvfs: Calibrate DFLL tuning threshold

Currently switch from low to high voltage tuning ranges is based on
fixed characterized V/F curve: high range tuning settings are used if
predicted voltage for DFLL target rate is above high range floor plus
fixed margin. If margin is too low this result in CL-DVFS saturation
at floor voltage with actual frequency above the target. If margin is
too high the low tuning range is over-extended with DFLL running at
unnecessary high voltages.

Tuning range selection algorithm introduced by this commit: high range
tuning settings are selected if predicted voltage for DFLL target rate
is above high range floor level (no margin). Actual DFLL rate at high
range floor is calibrated using existing DVCO minimum rate calibration
procedure. Fixed margin is used only for initial approximation of floor
rate before calibration starts.

All target rates between fixed estimated floor and calibrated high
range minimum rate are achieved using output skipper at floor voltage.
Thus, necessary accuracy of output rate is assured with high range
tuning settings and low output voltage.

Bug 1492902

Change-Id: I7ac27f62423e67a3f09213033c32aaad7871da2b
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/393224
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
arch/arm/mach-tegra/tegra_cl_dvfs.c