Re: [PATCH v2 1/4] thermal: of: Extend of-thermal.c to provide number of trip points

From: Eduardo Valentin
Date: Tue Nov 25 2014 - 13:06:41 EST



Lukasz,

On Thu, Nov 20, 2014 at 05:21:25PM +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@xxxxxxxxxxx>
> ---
> 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 | 20 ++++++++++++++++++++
> drivers/thermal/thermal_core.h | 5 +++++
> 2 files changed, 25 insertions(+)
>
> diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c
> index b7982f0..7170822 100644
> --- a/drivers/thermal/of-thermal.c
> +++ b/drivers/thermal/of-thermal.c
> @@ -112,6 +112,26 @@ 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;
> +}
> +

Missing
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..c3c7b82 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 *);
> #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 *)

You need to declare the parameter name with a name ---------------^ .

> +{

This produces a compilation error if CONFIG_THERMAL_OF is not set:
In file included from drivers/thermal/step_wise.c:28:0:
drivers/thermal/thermal_core.h: In function âof_thermal_get_ntripsâ:
drivers/thermal/thermal_core.h:96:48: error: parameter name omitted
static inline int of_thermal_get_ntrips(struct thermal_zone_device *)



> + return 0;
> +}
> #endif
>
> #endif /* __THERMAL_CORE_H__ */
> --
> 2.0.0.rc2
>

Attachment: signature.asc
Description: Digital signature