Re: [PATCH v3 08/12] thermal/core: Add thermal_trip in thermal_zone

Lukasz Luba
2022-07-04T08:36:02Z

On 7/3/22 19:30, Daniel Lezcano wrote:
> The thermal trip points are properties of a thermal zone and the
> different sub systems should be able to save them in the thermal zone
> structure instead of having their own definition.
>
> Give the opportunity to the drivers to create a thermal zone with
> thermal trips which will be accessible directly from the thermal core
> framework.
>
> Cc: Alexandre Bailon <abailon@baylibre.com>
> Cc: Kevin Hilman <khilman@baylibre.com>
> Cc; Eduardo Valentin <eduval@amazon.com>
> Signed-off-by: Daniel Lezcano <daniel.lezcano@linexp.org>
> ---
> drivers/thermal/thermal_core.h | 10 ++++++++++
> include/linux/thermal.h | 1 +
> 2 files changed, 11 insertions(+)
>
> diff --git a/drivers/thermal/thermal_core.h b/drivers/thermal/thermal_core.h
> index c991bb290512..84e341c1e0fc 100644
> --- a/drivers/thermal/thermal_core.h
> +++ b/drivers/thermal/thermal_core.h
> @@ -113,6 +113,16 @@ int thermal_build_list_of_policies(char *buf);
> /* Helpers */
> void thermal_zone_set_trips(struct thermal_zone_device *tz);
>
> +static inline struct thermal_trip *thermal_zone_get_trips(struct thermal_zone *tz)
> +{
> + return tz->trips;
> +}
> +
> +static inline int thermal_zone_get_ntrips(struct thermal_zone *tz)
> +{
> + return tz->ntrips;

'num_trips' ?

> +}
> +
> /* sysfs I/F */
> int thermal_zone_create_device_groups(struct thermal_zone_device *, int);
> void thermal_zone_destroy_device_groups(struct thermal_zone_device *);
> diff --git a/include/linux/thermal.h b/include/linux/thermal.h
> index 3a57878a2a6c..3733e23b6359 100644
> --- a/include/linux/thermal.h
> +++ b/include/linux/thermal.h

Missing doc comment new line for this new field.

> @@ -179,6 +179,7 @@ struct thermal_zone_device {
> struct thermal_zone_device_ops *ops;
> struct thermal_zone_params *tzp;
> struct thermal_governor *governor;
> + struct thermal_trip *trips;

I would group together two lines:
struct thermal_trip *trips;
int num_trips;

> void *governor_data;
> struct list_head thermal_instances;
> struct ida ida;