dvfs: tegra21: Don't allow NA mode on certain parts
authorAlex Frid <afrid@nvidia.com>
Thu, 6 Nov 2014 02:11:14 +0000 (18:11 -0800)
committerAleksandr Frid <afrid@nvidia.com>
Tue, 11 Nov 2014 17:52:15 +0000 (09:52 -0800)
commit5855758560de6f2e1e8945a35179d5cf5679b43c
tree5764a5c297bd9268b72359cacfb9d74374661492
parente462af48d924d99378ab106fde8ee68ce128534c
dvfs: tegra21: Don't allow NA mode on certain parts

GM20b GPCPLL NA mode should not be enabled on Tegra21 parts with
speedo revision 0 or 1, even when CONFIG_TEGRA_USE_NA_GPCPLL is set.
Respectively, in this case non-NA GPU DVFS table must be selected.

To accommodate this restriction added GPU speedo id 1, and mapped
parts with revision 2 and above to this new speedo id. Kept speedo id
0 for parts with revision 0 or 1. Only non-NA DVFS table is selected
for speedo id 0. Either non-NA or NA mode DVFS table can be selected
by CONFIG_TEGRA_USE_NA_GPCPLL setting for parts with speedo id 1.

GM20b GPCPLL mode selection procedure is updated accordingly, so that
NA mode is disabled for speedo id 0, and selected for speedo id 1 by
CONFIG_TEGRA_USE_NA_GPCPLL. The latter takes precedence over GPCPLL
ADC calibration fuses - if config option is set, and part has speedo
id 1, NA mode is enabled even if calibration fuses are not burnt (less
accurate s/w self-calibration is used in this case).

Bug 1555318

Change-Id: I3948cb945206d0bc0f9f2bb6da5505c50ffc2af1
Signed-off-by: Alex Frid <afrid@nvidia.com>
Reviewed-on: http://git-master/r/594718
Reviewed-by: Seshendra Gadagottu <sgadagottu@nvidia.com>
Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com>
drivers/gpu/nvgpu/gm20b/clk_gm20b.c
drivers/misc/tegra-fuse/tegra_fuse.c
drivers/platform/tegra/tegra21_dvfs.c
drivers/platform/tegra/tegra21_speedo.c
include/linux/tegra-fuse.h