diff mbox

[v2,2/4] thermal: of: Extend of-thermal.c to provide check if trip point is enabled

Message ID 1416500488-7232-3-git-send-email-l.majewski@samsung.com (mailing list archive)
State Changes Requested
Delegated to: Eduardo Valentin
Headers show

Commit Message

Lukasz Majewski Nov. 20, 2014, 4:21 p.m. UTC
This patch extends the of-thermal.c to provide check if trip point is
enabled.

Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
---
Changes for v2:
- Replace int with bool
- Replace 1/0 with true/false
- Add check if data pointer is not NULL
- Add missing doxygen style comment for the function
---
 drivers/thermal/of-thermal.c   | 20 ++++++++++++++++++++
 drivers/thermal/thermal_core.h |  5 +++++
 2 files changed, 25 insertions(+)

Comments

Eduardo Valentin Nov. 25, 2014, 8:25 a.m. UTC | #1
Lukasz,

Same stuff here.

On Thu, Nov 20, 2014 at 05:21:26PM +0100, Lukasz Majewski wrote:
> This patch extends the of-thermal.c to provide check if trip point is
> enabled.
> 
> Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
> ---
> Changes for v2:
> - Replace int with bool
> - Replace 1/0 with true/false
> - Add check if data pointer is not NULL
> - Add missing doxygen style comment for the function
> ---
>  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 7170822..336af7f 100644
> --- a/drivers/thermal/of-thermal.c
> +++ b/drivers/thermal/of-thermal.c
> @@ -132,6 +132,26 @@ int of_thermal_get_ntrips(struct thermal_zone_device *tz)
>  	return data->ntrips;
>  }
>  
> +/**
> + * of_thermal_is_trip_en - function to check if trip point is enabled
> + *
> + * @tz:	pointer to a thermal zone
> + * @trip:	trip point to evaluate
> + *
> + * This function is responsible for checking if passed trip point is enabled
> + *
> + * Return: true if trip point is enabled, false otherwise
> + */
> +bool of_thermal_is_trip_en(struct thermal_zone_device *tz, int trip)

This one looks more like "is this trip point valid?" than "is this trip
point enabled?", isn't it?

By having such a function to check if a trip is enabled, one would
expect to have functions to enable / disable trips points.

What do you think of naming it:
of_thermal_is_trip_valid()
?

> +{
> +	struct __thermal_zone *data = tz->devdata;
> +
> +	if (!data || trip >= data->ntrips || trip < 0)

Even your check is about looking if the trip value is within a range,
telling the caller if the trip is valid or not, right?

> +		return false;
> +
> +	return true;
> +}
> +

Missing:
EXPORT_SYMBOL_GPL(of_thermal_is_trip_en);

or

EXPORT_SYMBOL_GPL(of_thermal_is_trip_valid);

>  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 c3c7b82..466208c 100644
> --- a/drivers/thermal/thermal_core.h
> +++ b/drivers/thermal/thermal_core.h
> @@ -90,6 +90,7 @@ static inline void thermal_gov_user_space_unregister(void) {}
>  int of_parse_thermal_zones(void);
>  void of_thermal_destroy_zones(void);
>  int of_thermal_get_ntrips(struct thermal_zone_device *);
> +bool of_thermal_is_trip_en(struct thermal_zone_device *, int);
>  #else
>  static inline int of_parse_thermal_zones(void) { return 0; }
>  static inline void of_thermal_destroy_zones(void) { }
> @@ -97,6 +98,10 @@ static inline int of_thermal_get_ntrips(struct thermal_zone_device *)
>  {
>  	return 0;
>  }
> +static inline bool of_thermal_is_trip_en(struct thermal_zone_device *, int)

Same as in patch 01, this produces compilation error. Please, name your
parameters.

> +{
> +	return 0;
> +}
>  #endif
>  
>  #endif /* __THERMAL_CORE_H__ */
> -- 
> 2.0.0.rc2
>
Lukasz Majewski Nov. 26, 2014, 8:31 a.m. UTC | #2
Hi Eduardo,

> 
> Lukasz,
> 
> Same stuff here.
> 
> On Thu, Nov 20, 2014 at 05:21:26PM +0100, Lukasz Majewski wrote:
> > This patch extends the of-thermal.c to provide check if trip point
> > is enabled.
> > 
> > Signed-off-by: Lukasz Majewski <l.majewski@samsung.com>
> > ---
> > Changes for v2:
> > - Replace int with bool
> > - Replace 1/0 with true/false
> > - Add check if data pointer is not NULL
> > - Add missing doxygen style comment for the function
> > ---
> >  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 7170822..336af7f 100644
> > --- a/drivers/thermal/of-thermal.c
> > +++ b/drivers/thermal/of-thermal.c
> > @@ -132,6 +132,26 @@ int of_thermal_get_ntrips(struct
> > thermal_zone_device *tz) return data->ntrips;
> >  }
> >  
> > +/**
> > + * of_thermal_is_trip_en - function to check if trip point is
> > enabled
> > + *
> > + * @tz:	pointer to a thermal zone
> > + * @trip:	trip point to evaluate
> > + *
> > + * This function is responsible for checking if passed trip point
> > is enabled
> > + *
> > + * Return: true if trip point is enabled, false otherwise
> > + */
> > +bool of_thermal_is_trip_en(struct thermal_zone_device *tz, int
> > trip)
> 
> This one looks more like "is this trip point valid?" than "is this
> trip point enabled?", isn't it?
> 
> By having such a function to check if a trip is enabled, one would
> expect to have functions to enable / disable trips points.
> 
> What do you think of naming it:
> of_thermal_is_trip_valid()
> ?
> 

Good point. I think that of_thermal_is_trip_valid() is a better name.

> > +{
> > +	struct __thermal_zone *data = tz->devdata;
> > +
> > +	if (!data || trip >= data->ntrips || trip < 0)
> 
> Even your check is about looking if the trip value is within a range,
> telling the caller if the trip is valid or not, right?

Yes. Correct. it justifies function rename to of_thermal_is_trip_valid()

> 
> > +		return false;
> > +
> > +	return true;
> > +}
> > +
> 
> Missing:
> EXPORT_SYMBOL_GPL(of_thermal_is_trip_en);
> 
> or
> 
> EXPORT_SYMBOL_GPL(of_thermal_is_trip_valid);

I will add that, no problem.

> 
> >  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 c3c7b82..466208c 100644
> > --- a/drivers/thermal/thermal_core.h
> > +++ b/drivers/thermal/thermal_core.h
> > @@ -90,6 +90,7 @@ static inline void
> > thermal_gov_user_space_unregister(void) {} int
> > of_parse_thermal_zones(void); void of_thermal_destroy_zones(void);
> >  int of_thermal_get_ntrips(struct thermal_zone_device *);
> > +bool of_thermal_is_trip_en(struct thermal_zone_device *, int);
> >  #else
> >  static inline int of_parse_thermal_zones(void) { return 0; }
> >  static inline void of_thermal_destroy_zones(void) { }
> > @@ -97,6 +98,10 @@ static inline int of_thermal_get_ntrips(struct
> > thermal_zone_device *) {
> >  	return 0;
> >  }
> > +static inline bool of_thermal_is_trip_en(struct
> > thermal_zone_device *, int)
> 
> Same as in patch 01, this produces compilation error. Please, name
> your parameters.

Ok.

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

Patch

diff --git a/drivers/thermal/of-thermal.c b/drivers/thermal/of-thermal.c
index 7170822..336af7f 100644
--- a/drivers/thermal/of-thermal.c
+++ b/drivers/thermal/of-thermal.c
@@ -132,6 +132,26 @@  int of_thermal_get_ntrips(struct thermal_zone_device *tz)
 	return data->ntrips;
 }
 
+/**
+ * of_thermal_is_trip_en - function to check if trip point is enabled
+ *
+ * @tz:	pointer to a thermal zone
+ * @trip:	trip point to evaluate
+ *
+ * This function is responsible for checking if passed trip point is enabled
+ *
+ * Return: true if trip point is enabled, false otherwise
+ */
+bool of_thermal_is_trip_en(struct thermal_zone_device *tz, int trip)
+{
+	struct __thermal_zone *data = tz->devdata;
+
+	if (!data || trip >= data->ntrips || trip < 0)
+		return false;
+
+	return true;
+}
+
 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 c3c7b82..466208c 100644
--- a/drivers/thermal/thermal_core.h
+++ b/drivers/thermal/thermal_core.h
@@ -90,6 +90,7 @@  static inline void thermal_gov_user_space_unregister(void) {}
 int of_parse_thermal_zones(void);
 void of_thermal_destroy_zones(void);
 int of_thermal_get_ntrips(struct thermal_zone_device *);
+bool of_thermal_is_trip_en(struct thermal_zone_device *, int);
 #else
 static inline int of_parse_thermal_zones(void) { return 0; }
 static inline void of_thermal_destroy_zones(void) { }
@@ -97,6 +98,10 @@  static inline int of_thermal_get_ntrips(struct thermal_zone_device *)
 {
 	return 0;
 }
+static inline bool of_thermal_is_trip_en(struct thermal_zone_device *, int)
+{
+	return 0;
+}
 #endif
 
 #endif /* __THERMAL_CORE_H__ */