diff options
Diffstat (limited to 'arch/arm/mach-tegra/board-cardhu-power.c')
-rw-r--r-- | arch/arm/mach-tegra/board-cardhu-power.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/arch/arm/mach-tegra/board-cardhu-power.c b/arch/arm/mach-tegra/board-cardhu-power.c index f593d9fe4d11..6af7c4a85b51 100644 --- a/arch/arm/mach-tegra/board-cardhu-power.c +++ b/arch/arm/mach-tegra/board-cardhu-power.c @@ -33,6 +33,7 @@ #include <mach/iomap.h> #include <mach/irqs.h> #include <mach/pinmux.h> +#include <mach/edp.h> #include "gpio-names.h" #include "board.h" @@ -943,3 +944,29 @@ int __init cardhu_power_off_init(void) return 0; } +#ifdef CONFIG_TEGRA_EDP_LIMITS +/* + * placeholder for now. needs to be changed with characterized data. + * step size cannot be less than 4C + */ +static struct tegra_edp_limits cardhu_edp_limits[] = { +/* Temperature 1 CPU 2 CPUs 3 CPUs 4 CPUs */ + {60, {1400000, 1300000, 1300000, 1300000}}, + {70, {1400000, 1300000, 1300000, 1260000}}, + {80, {1400000, 1300000, 1300000, 1200000}}, + {90, {1400000, 1300000, 1300000, 1100000}}, +}; + +void cardhu_thermal_zones_info(struct tegra_edp_limits **z, int *sz) +{ + *z = cardhu_edp_limits; + *sz = ARRAY_SIZE(cardhu_edp_limits); +} + +int __init cardhu_edp_init(void) +{ + // FIXME: uncomment to override default EDP with above table + //tegra_init_cpu_edp_limits(cardhu_edp_limits, ARRAY_SIZE(cardhu_edp_limits)); + return 0; +} +#endif |