Messages in this thread | | | Date | Mon, 8 Dec 2014 15:52:49 -0400 | From | Eduardo Valentin <> | Subject | Re: [PATCH v3 1/5] thermal: of: Extend of-thermal.c to provide number of trip points |
| |
On Mon, Dec 08, 2014 at 06:04:17PM +0100, Lukasz Majewski wrote: > This patch extends the of-thermal.c to provide information about number of > available trip points. > > Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> > --- > Changes for v3: > - Exporting of_thermal_get_ntrips symbol as a GPL > - Fix build error when CONFIG_THERMAL_OF is disabled > > Changes for v2: > - Provide detailed (doxygen like) description of the of_thermal_get_ntrips() > method > - Check for data pointer not being NULL > --- > drivers/thermal/of-thermal.c | 21 +++++++++++++++++++++ > drivers/thermal/thermal_core.h | 5 +++++ > 2 files changed, 26 insertions(+) > > diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c > index b7982f0..7facd23 100644 > --- a/drivers/thermal/of-thermal.c > +++ b/drivers/thermal/of-thermal.c > @@ -112,6 +112,27 @@ static int of_thermal_get_temp(struct thermal_zone_device *tz, > return data->ops->get_temp(data->sensor_data, temp); > } > > +/** > + * of_thermal_get_ntrips - function to export number of available trip > + * points. > + * @tz: pointer to a thermal zone > + * > + * This function is a globally visible wrapper to get number of trip points > + * stored in the local struct __thermal_zone > + * > + * Return: number of available trip points, -ENODEV when data not available > + */ > +int of_thermal_get_ntrips(struct thermal_zone_device *tz) > +{ > + struct __thermal_zone *data = tz->devdata; > + > + if (!data || IS_ERR(data)) > + return -ENODEV; > + > + return data->ntrips; > +} > +EXPORT_SYMBOL_GPL(of_thermal_get_ntrips); > + > static int of_thermal_get_trend(struct thermal_zone_device *tz, int trip, > enum thermal_trend *trend) > { > diff --git a/drivers/thermal/thermal_core.h b/drivers/thermal/thermal_core.h > index d15d243..1cc5041 100644 > --- a/drivers/thermal/thermal_core.h > +++ b/drivers/thermal/thermal_core.h > @@ -89,9 +89,14 @@ static inline void thermal_gov_user_space_unregister(void) {} > #ifdef CONFIG_THERMAL_OF > int of_parse_thermal_zones(void); > void of_thermal_destroy_zones(void); > +int of_thermal_get_ntrips(struct thermal_zone_device *);
Lukasz,
Here is a question that applies to all patches in this series adding functions in this header.
i suppose you intend to use these new functions in driver code, right? Add them here, will limit their usage to code inside drivers/thermal.
Shouldn't these new APIs be declared under include/linux/thermal.h?
This way, they can be be available to other parts of the kernel too.
> #else > static inline int of_parse_thermal_zones(void) { return 0; } > static inline void of_thermal_destroy_zones(void) { } > +static inline int of_thermal_get_ntrips(struct thermal_zone_device *tz) > +{ > + return 0; > +} > #endif > > #endif /* __THERMAL_CORE_H__ */ > -- > 2.0.0.rc2 > [unhandled content-type:application/pgp-signature] | |