summaryrefslogtreecommitdiff
path: root/arch/arm/mach-tegra
diff options
context:
space:
mode:
authorAlex Frid <afrid@nvidia.com>2010-03-01 17:07:59 -0800
committerGary King <gking@nvidia.com>2010-03-04 21:13:18 -0800
commitded58bd5f0cab2bc6e4f0f5435422b6c0c23f6be (patch)
tree476eae2330d5235f62513b3e4bd88ebe2a3ea312 /arch/arm/mach-tegra
parented986ab741c8c035c605ce4392d793d9ad72f5ae (diff)
tegra ODM: Added new Whistler PMU revision support.
Added support for the new Whistler PMU revision that preserves CPU voltage across LP2 (it will allow to enable core voltage scaling on E1109 processor boards). Change-Id: I0724414c5148f39b3c6fa4f0d3f84963231d2520 Reviewed-on: http://git-master/r/726 Tested-by: Aleksandr Frid <afrid@nvidia.com> Reviewed-by: Yu-Huan Hsu <yhsu@nvidia.com> Reviewed-by: Gary King <gking@nvidia.com>
Diffstat (limited to 'arch/arm/mach-tegra')
-rwxr-xr-xarch/arm/mach-tegra/odm_kit/query/whistler/nvodm_query.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/arch/arm/mach-tegra/odm_kit/query/whistler/nvodm_query.c b/arch/arm/mach-tegra/odm_kit/query/whistler/nvodm_query.c
index 374feeb59cb8..7bbdba7f9d2d 100755
--- a/arch/arm/mach-tegra/odm_kit/query/whistler/nvodm_query.c
+++ b/arch/arm/mach-tegra/odm_kit/query/whistler/nvodm_query.c
@@ -51,6 +51,7 @@
#define BOARD_ID_WHISTLER_E1108 0x0B08
#define BOARD_ID_WHISTLER_E1109 0x0B09
+#define BOARD_ID_WHISTLER_PMU_E1116 0x0B10
#define BOARD_ID_WHISTLER_MOTHERBOARD_E1120 0xB14
#define BOARD_ID_VOYAGER_MAINBOARD_E1215 0xC0F
#define BOARD_REV_ALL ((NvU8)0xFF)
@@ -648,6 +649,18 @@ static NvBool NvOdmIsE1108Hynix(void)
}
#endif
+static NvBool NvOdmIsCpuRailPreserved(void)
+{
+ // A list of Whistler PMU boards that preserves CPU voltage across LP2/LP1
+ static const NvOdmBoardInfo s_WhistlerCpuPreservedBoards[] =
+ {
+ // ID SKU FAB Rev Minor Rev
+ { BOARD_ID_WHISTLER_PMU_E1116, 0x0A0A, 0x01, BOARD_REV_ALL, BOARD_REV_ALL},
+ };
+ return NvOdmIsBoardPresent(s_WhistlerCpuPreservedBoards,
+ NV_ARRAY_SIZE(s_WhistlerCpuPreservedBoards));
+}
+
NvBool NvOdmIsCpuExtSupply(void)
{
// A list of Whistler processor boards that use external DCDC as CPU
@@ -1132,7 +1145,8 @@ NvBool NvOdmQueryGetPmuProperty(NvOdmPmuProperty* pPmuProperty)
pPmuProperty->CpuPowerGoodUs = 2000;
pPmuProperty->AccuracyPercent = 3;
- if (NvOdmIsCpuExtSupply())
+ if (NvOdmIsCpuExtSupply() ||
+ NvOdmIsCpuRailPreserved())
pPmuProperty->VCpuOTPOnWakeup = NV_FALSE;
else
pPmuProperty->VCpuOTPOnWakeup = NV_TRUE;