summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--arch/arm/mach-tegra/board-ardbeg-power.c9
-rw-r--r--arch/arm/mach-tegra/board-laguna-power.c12
-rw-r--r--arch/arm/mach-tegra/board-loki-power.c9
3 files changed, 28 insertions, 2 deletions
diff --git a/arch/arm/mach-tegra/board-ardbeg-power.c b/arch/arm/mach-tegra/board-ardbeg-power.c
index e26a72f49ac1..3616cd06a795 100644
--- a/arch/arm/mach-tegra/board-ardbeg-power.c
+++ b/arch/arm/mach-tegra/board-ardbeg-power.c
@@ -1250,6 +1250,11 @@ int __init ardbeg_edp_init(void)
pr_info("%s: CPU regulator %d mA\n", __func__, regulator_mA);
tegra_init_cpu_edp_limits(regulator_mA);
+ /* gpu maximum current */
+ regulator_mA = 12000;
+ pr_info("%s: GPU regulator %d mA\n", __func__, regulator_mA);
+
+ tegra_init_gpu_edp_limits(regulator_mA);
return 0;
}
@@ -1396,6 +1401,10 @@ int __init ardbeg_soctherm_init(void)
ardbeg_soctherm_data.therm[THERM_CPU].trips,
&ardbeg_soctherm_data.therm[THERM_CPU].num_trips,
8000); /* edp temperature margin */
+ tegra_platform_gpu_edp_init(
+ ardbeg_soctherm_data.therm[THERM_GPU].trips,
+ &ardbeg_soctherm_data.therm[THERM_GPU].num_trips,
+ 8000);
tegra_add_tj_trips(
ardbeg_soctherm_data.therm[THERM_CPU].trips,
&ardbeg_soctherm_data.therm[THERM_CPU].num_trips);
diff --git a/arch/arm/mach-tegra/board-laguna-power.c b/arch/arm/mach-tegra/board-laguna-power.c
index e933a89d872d..af3e7ff87edb 100644
--- a/arch/arm/mach-tegra/board-laguna-power.c
+++ b/arch/arm/mach-tegra/board-laguna-power.c
@@ -816,7 +816,6 @@ int __init laguna_suspend_init(void)
int __init laguna_edp_init(void)
{
-#ifdef CONFIG_TEGRA_EDP_LIMITS
unsigned int regulator_mA;
regulator_mA = get_maximum_cpu_current_supported();
@@ -826,7 +825,12 @@ int __init laguna_edp_init(void)
pr_info("%s: CPU regulator %d mA\n", __func__, regulator_mA);
tegra_init_cpu_edp_limits(regulator_mA);
-#endif
+
+ /* gpu maximum current */
+ regulator_mA = 8000;
+ pr_info("%s: GPU regulator %d mA\n", __func__, regulator_mA);
+
+ tegra_init_gpu_edp_limits(regulator_mA);
return 0;
}
@@ -943,6 +947,10 @@ int __init laguna_soctherm_init(void)
tegra_platform_edp_init(laguna_soctherm_data.therm[THERM_CPU].trips,
&laguna_soctherm_data.therm[THERM_CPU].num_trips,
7000); /* edp temperature margin */
+ tegra_platform_gpu_edp_init(
+ laguna_soctherm_data.therm[THERM_GPU].trips,
+ &laguna_soctherm_data.therm[THERM_GPU].num_trips,
+ 7000);
tegra_add_tj_trips(laguna_soctherm_data.therm[THERM_CPU].trips,
&laguna_soctherm_data.therm[THERM_CPU].num_trips);
tegra_add_tgpu_trips(laguna_soctherm_data.therm[THERM_GPU].trips,
diff --git a/arch/arm/mach-tegra/board-loki-power.c b/arch/arm/mach-tegra/board-loki-power.c
index a291ad5f5cc9..c95c6ab2361f 100644
--- a/arch/arm/mach-tegra/board-loki-power.c
+++ b/arch/arm/mach-tegra/board-loki-power.c
@@ -800,6 +800,11 @@ int __init loki_edp_init(void)
pr_info("%s: CPU regulator %d mA\n", __func__, regulator_mA);
tegra_init_cpu_edp_limits(regulator_mA);
+ /* gpu maximum current */
+ regulator_mA = 12000;
+ pr_info("%s: GPU regulator %d mA\n", __func__, regulator_mA);
+
+ tegra_init_gpu_edp_limits(regulator_mA);
return 0;
}
@@ -934,6 +939,10 @@ int __init loki_soctherm_init(void)
loki_soctherm_data.therm[THERM_CPU].trips,
&loki_soctherm_data.therm[THERM_CPU].num_trips,
8000); /* edp temperature margin */
+ tegra_platform_gpu_edp_init(
+ loki_soctherm_data.therm[THERM_GPU].trips,
+ &loki_soctherm_data.therm[THERM_GPU].num_trips,
+ 8000);
tegra_add_tj_trips(
loki_soctherm_data.therm[THERM_CPU].trips,
&loki_soctherm_data.therm[THERM_CPU].num_trips);