diff options
author | Lukasz Majewski <l.majewski@samsung.com> | 2014-12-08 12:04:20 -0500 |
---|---|---|
committer | Eduardo Valentin <edubezval@gmail.com> | 2014-12-08 14:58:01 -0500 |
commit | ce8be7785922de0ef497b20384425ed04f674f9d (patch) | |
tree | 52ec11c8eb828786c5ff59509f580bbf23bd71d4 | |
parent | ad9914ac3b1f5c12ef2cf1c58a6ddda306fb79d4 (diff) |
thermal: of: Extend of-thermal to export table of trip points
This patch extends the of-thermal.c to export trip points for a given
thermal zone.
Thermal drivers should use of_thermal_get_trip_points() method to get
pointer to table of thermal trip points.
Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
-rw-r--r-- | drivers/thermal/of-thermal.c | 22 | ||||
-rw-r--r-- | drivers/thermal/thermal_core.h | 7 |
2 files changed, 29 insertions, 0 deletions
diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c index d3ac117e2ddd..e062bf59ab6c 100644 --- a/drivers/thermal/of-thermal.c +++ b/drivers/thermal/of-thermal.c | |||
@@ -139,6 +139,28 @@ bool of_thermal_is_trip_valid(struct thermal_zone_device *tz, int trip) | |||
139 | } | 139 | } |
140 | EXPORT_SYMBOL_GPL(of_thermal_is_trip_valid); | 140 | EXPORT_SYMBOL_GPL(of_thermal_is_trip_valid); |
141 | 141 | ||
142 | /** | ||
143 | * of_thermal_get_trip_points - function to get access to a globally exported | ||
144 | * trip points | ||
145 | * | ||
146 | * @tz: pointer to a thermal zone | ||
147 | * | ||
148 | * This function provides a pointer to trip points table | ||
149 | * | ||
150 | * Return: pointer to trip points table, NULL otherwise | ||
151 | */ | ||
152 | const struct thermal_trip * const | ||
153 | of_thermal_get_trip_points(struct thermal_zone_device *tz) | ||
154 | { | ||
155 | struct __thermal_zone *data = tz->devdata; | ||
156 | |||
157 | if (!data) | ||
158 | return NULL; | ||
159 | |||
160 | return data->trips; | ||
161 | } | ||
162 | EXPORT_SYMBOL_GPL(of_thermal_get_trip_points); | ||
163 | |||
142 | static int of_thermal_get_trend(struct thermal_zone_device *tz, int trip, | 164 | static int of_thermal_get_trend(struct thermal_zone_device *tz, int trip, |
143 | enum thermal_trend *trend) | 165 | enum thermal_trend *trend) |
144 | { | 166 | { |
diff --git a/drivers/thermal/thermal_core.h b/drivers/thermal/thermal_core.h index 58a0dfa44705..9083e7520623 100644 --- a/drivers/thermal/thermal_core.h +++ b/drivers/thermal/thermal_core.h | |||
@@ -91,6 +91,8 @@ int of_parse_thermal_zones(void); | |||
91 | void of_thermal_destroy_zones(void); | 91 | void of_thermal_destroy_zones(void); |
92 | int of_thermal_get_ntrips(struct thermal_zone_device *); | 92 | int of_thermal_get_ntrips(struct thermal_zone_device *); |
93 | bool of_thermal_is_trip_valid(struct thermal_zone_device *, int); | 93 | bool of_thermal_is_trip_valid(struct thermal_zone_device *, int); |
94 | const struct thermal_trip * const | ||
95 | of_thermal_get_trip_points(struct thermal_zone_device *); | ||
94 | #else | 96 | #else |
95 | static inline int of_parse_thermal_zones(void) { return 0; } | 97 | static inline int of_parse_thermal_zones(void) { return 0; } |
96 | static inline void of_thermal_destroy_zones(void) { } | 98 | static inline void of_thermal_destroy_zones(void) { } |
@@ -103,6 +105,11 @@ static inline bool of_thermal_is_trip_valid(struct thermal_zone_device *tz, | |||
103 | { | 105 | { |
104 | return 0; | 106 | return 0; |
105 | } | 107 | } |
108 | static inline const struct thermal_trip * const | ||
109 | of_thermal_get_trip_points(struct thermal_zone_device *tz) | ||
110 | { | ||
111 | return NULL; | ||
112 | } | ||
106 | #endif | 113 | #endif |
107 | 114 | ||
108 | #endif /* __THERMAL_CORE_H__ */ | 115 | #endif /* __THERMAL_CORE_H__ */ |