diff options
author | Hyongbin Kim <hyongbink@nvidia.com> | 2013-08-21 12:25:03 +0900 |
---|---|---|
committer | Gabby Lee <galee@nvidia.com> | 2013-08-23 04:59:21 -0700 |
commit | f091316cf50e1d5b7a85e2387463d30fd64f360c (patch) | |
tree | 8158491b767b61e6107a746ccfb50ff80fc1db8b /arch | |
parent | 51ac69e5b329f61d7c5ab4c37da4917e36ba256c (diff) |
ARM: Tegra: TT-power: set sysedp throttle
At low SOC, set current threshold with INA230 is not enough.
Need to use sysedp capping in low soc.
set 10000mW under 4%, 10500mW under 8%.
Bug 1329495
Change-Id: I15b845f7669729692bfa3e32729512af0a20e555
Signed-off-by: Hyongbin Kim <hyongbink@nvidia.com>
Reviewed-on: http://git-master/r/264168
Reviewed-by: Automatic_Commit_Validation_User
GVS: Gerrit_Virtual_Submit
Reviewed-by: Gabby Lee <galee@nvidia.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/arm/boot/dts/tegra114-tegratab-common.dtsi | 4 | ||||
-rw-r--r-- | arch/arm/mach-tegra/board-tegratab-power.c | 43 |
2 files changed, 20 insertions, 27 deletions
diff --git a/arch/arm/boot/dts/tegra114-tegratab-common.dtsi b/arch/arm/boot/dts/tegra114-tegratab-common.dtsi index bebcd27c0b78..daf26297e795 100644 --- a/arch/arm/boot/dts/tegra114-tegratab-common.dtsi +++ b/arch/arm/boot/dts/tegra114-tegratab-common.dtsi @@ -858,6 +858,10 @@ current_threshold_num = <2>; current_threshold_soc = <4 8>; current_threshold = <1800 2500>; + sysedp_throttle = "sysedp_lite"; + sysedp_throttle_num = <2>; + sysedp_throttle_soc = <4 8>; + sysedp_throttle_power = <10000 10500>; }; }; diff --git a/arch/arm/mach-tegra/board-tegratab-power.c b/arch/arm/mach-tegra/board-tegratab-power.c index 5b3d7738f9a5..7e52f6d36ac6 100644 --- a/arch/arm/mach-tegra/board-tegratab-power.c +++ b/arch/arm/mach-tegra/board-tegratab-power.c @@ -128,6 +128,10 @@ struct max17048_platform_data tegratab_max17048_pdata = { .current_threshold_num = 2, .current_threshold_soc = {4, 8}, .current_threshold = {1800, 2500}, + .sysedp_throttle = sysedp_lite_throttle, + .sysedp_throttle_num = 2, + .sysedp_throttle_soc = {4, 8}, + .sysedp_throttle_power = {10000, 10500}, }; static struct i2c_board_info __initdata tegratab_max17048_boardinfo[] = { @@ -1062,33 +1066,18 @@ void __init tegratab_sysedp_psydepl_init(void) WARN_ON(r); } +#define NO_CAP (ULONG_MAX) static struct tegra_sysedp_corecap tegratab_sysedp_corecap[] = { - /* - { 1000, { 1000, 240, 204 }, { 1000, 240, 204 } }, - { 2000, { 1000, 240, 204 }, { 1000, 240, 204 } }, - { 3000, { 1000, 240, 204 }, { 1000, 240, 204 } }, - { 4000, { 1000, 240, 204 }, { 1000, 240, 204 } }, - { 5000, { 1000, 240, 204 }, { 1000, 240, 312 } }, - { 6000, { 1679, 240, 312 }, { 1679, 240, 312 } }, - */ - { 6100, { 1700, 240, 312 }, { 1700, 240, 312 } }, - { 7900, { 2743, 240, 624 }, { 2875, 324, 408 } }, - { 8400, { 3243, 240, 624 }, { 2706, 420, 624 } }, - { 9100, { 3943, 240, 624 }, { 2706, 420, 792 } }, - { 10000, { 4565, 240, 792 }, { 3398, 528, 792 } }, - { 11000, { 5565, 240, 792 }, { 4398, 528, 792 } }, - { 12000, { 6565, 240, 792 }, { 4277, 600, 792 } }, - { 13000, { 7565, 240, 792 }, { 5277, 600, 792 } }, - { 14000, { 8565, 240, 792 }, { 6277, 600, 792 } }, - { 15000, { 9565, 384, 792 }, { 7277, 600, 792 } }, - { 16000, { 10565, 468, 792 }, { 8277, 600, 792 } }, - /* - { 17000, { 11565, 468, 792 }, { 9277, 600, 792 } }, - { 18000, { 12565, 468, 792 }, { 10277, 600, 792 } }, - { 19000, { 13565, 468, 792 }, { 11277, 600, 792 } }, - { 20000, { 14565, 468, 792 }, { 12277, 600, 792 } }, - { 23000, { 14565, 600, 792 }, { 14565, 600, 792 } }, - */ + { 9100, { 3943, 240, 624 }, { 2706, 420, 792 } }, + { 10000, { 4565, 240, 792 }, { 3398, 528, 792 } }, + { 10500, { 5065, 240, 792 }, { 3898, 528, 792 } }, + { 11000, { 5565, 240, 792 }, { 4398, 528, 792 } }, + { 12000, { 6565, 240, 792 }, { 4277, 600, 792 } }, + { 13000, { 7565, 240, 792 }, { 5277, 600, 792 } }, + { 14000, { 8565, 240, 792 }, { 6277, 600, 792 } }, + { 15000, { 9565, 384, 792 }, { 7277, 600, 792 } }, + { 16000, { 10565, 468, 792 }, { 8277, 600, 792 } }, + { NO_CAP, { NO_CAP, NO_CAP, NO_CAP }, { NO_CAP, NO_CAP, NO_CAP } }, }; static struct tegra_sysedp_platform_data tegratab_sysedp_platdata = { @@ -1098,7 +1087,7 @@ static struct tegra_sysedp_platform_data tegratab_sysedp_platdata = { }; static struct platform_device tegratab_sysedp_device = { - .name = "tegra_sysedp", + .name = "tegra_sysedp_lite", .id = -1, .dev = { .platform_data = &tegratab_sysedp_platdata } }; |