ARM: tegra: power: Limit CPU rate on system EDP alarm
[linux-3.10.git] / arch / arm / mach-tegra / include / mach / edp.h
index 92d2e4f..48321ca 100644 (file)
@@ -35,18 +35,28 @@ struct tegra_edp_limits {
        unsigned int freq_limits[4];
 };
 
+struct system_edp_entry {
+       char speedo_id;
+       char power_limit_100mW;
+       char freq_limits[4];
+};
 
 #ifdef CONFIG_TEGRA_EDP_LIMITS
 
 
 int tegra_edp_update_thermal_zone(int temperature);
 void tegra_init_cpu_edp_limits(unsigned int regulator_mA);
+void tegra_init_system_edp_limits(unsigned int power_limit_mW);
 void tegra_get_cpu_edp_limits(const struct tegra_edp_limits **limits, int *size);
 unsigned int tegra_get_edp_limit(void);
+void tegra_get_system_edp_limits(const unsigned int **limits);
+int tegra_system_edp_alarm(bool alarm);
 
 #else
 static inline void tegra_init_cpu_edp_limits(int regulator_mA)
 {}
+static inline void tegra_init_system_edp_limits(int power_limit_mW)
+{}
 static inline int tegra_edp_update_thermal_zone(int temperature)
 { return -1; }
 static inline void tegra_get_cpu_edp_limits(struct tegra_edp_limits **limits,
@@ -54,6 +64,10 @@ static inline void tegra_get_cpu_edp_limits(struct tegra_edp_limits **limits,
 {}
 static inline unsigned int tegra_get_edp_limit(void)
 { return -1; }
+static inline void tegra_get_system_edp_limits(unsigned int **limits)
+{}
+static inline int tegra_system_edp_alarm(bool alarm)
+{ return -1; }
 #endif
 
 #ifdef CONFIG_ARCH_TEGRA_2x_SOC