2023-03-09 09:28:43

by Daniel Lezcano

[permalink] [raw]
Subject: [PATCH v2 1/2] thermal/drivers/imx: Remove get_trip_temp ops

The i.MX thermal sensor uses the generic trip points. The thermal
framework can return the critical temperature directly.

Remove the pointless get_trip_temp ops.

Signed-off-by: Daniel Lezcano <[email protected]>
---
drivers/thermal/imx_thermal.c | 8 --------
1 file changed, 8 deletions(-)

diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
index c3136978adee..69ed482167f7 100644
--- a/drivers/thermal/imx_thermal.c
+++ b/drivers/thermal/imx_thermal.c
@@ -330,13 +330,6 @@ static int imx_change_mode(struct thermal_zone_device *tz,
return 0;
}

-static int imx_get_crit_temp(struct thermal_zone_device *tz, int *temp)
-{
- *temp = trips[IMX_TRIP_CRITICAL].temperature;
-
- return 0;
-}
-
static int imx_set_trip_temp(struct thermal_zone_device *tz, int trip,
int temp)
{
@@ -384,7 +377,6 @@ static struct thermal_zone_device_ops imx_tz_ops = {
.unbind = imx_unbind,
.get_temp = imx_get_temp,
.change_mode = imx_change_mode,
- .get_crit_temp = imx_get_crit_temp,
.set_trip_temp = imx_set_trip_temp,
};

--
2.34.1



2023-03-09 09:28:46

by Daniel Lezcano

[permalink] [raw]
Subject: [PATCH v2 2/2] thermal/drivers/imx: Use the thermal framework for the trip point

The thermal framework provides an API to get the trip related to a
trip point id. We want to consolidate the generic trip points code,
thus preventing the different drivers to deal with the trip points
after they registered them.

The set_trip_temp ops will be changed regarding the above changes but
first we need to rework a bit the different implementation in the
drivers.

The goal is to prevent using the trip id but use a trip point passed
as parameter which will contain all the needed information.

As we don't have the trip point passed as parameter yet, we get the
trip point using the generic trip thermal framewrok APIs and use it to
take exactly the same decisions.

The difference with this change and the previous code is from where we
get the thermal trip point (which is the same).

No functional change intended.

Signed-off-by: Daniel Lezcano <[email protected]>
---
V2:
- Remove extra tab inserted in the previous version
---
drivers/thermal/imx_thermal.c | 11 +++++++----
1 file changed, 7 insertions(+), 4 deletions(-)

diff --git a/drivers/thermal/imx_thermal.c b/drivers/thermal/imx_thermal.c
index 69ed482167f7..13c56e45cdbc 100644
--- a/drivers/thermal/imx_thermal.c
+++ b/drivers/thermal/imx_thermal.c
@@ -330,26 +330,29 @@ static int imx_change_mode(struct thermal_zone_device *tz,
return 0;
}

-static int imx_set_trip_temp(struct thermal_zone_device *tz, int trip,
+static int imx_set_trip_temp(struct thermal_zone_device *tz, int trip_id,
int temp)
{
struct imx_thermal_data *data = thermal_zone_device_priv(tz);
+ struct thermal_trip trip;
int ret;

ret = pm_runtime_resume_and_get(data->dev);
if (ret < 0)
return ret;

+ ret = __thermal_zone_get_trip(tz, trip_id, &trip);
+ if (ret)
+ return ret;
+
/* do not allow changing critical threshold */
- if (trip == IMX_TRIP_CRITICAL)
+ if (trip.type == THERMAL_TRIP_CRITICAL)
return -EPERM;

/* do not allow passive to be set higher than critical */
if (temp < 0 || temp > trips[IMX_TRIP_CRITICAL].temperature)
return -EINVAL;

- trips[IMX_TRIP_PASSIVE].temperature = temp;
-
imx_set_alarm_temp(data, temp);

pm_runtime_put(data->dev);
--
2.34.1


2023-03-09 10:45:59

by Fabio Estevam

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] thermal/drivers/imx: Remove get_trip_temp ops

On Thu, Mar 9, 2023 at 6:28 AM Daniel Lezcano <[email protected]> wrote:
>
> The i.MX thermal sensor uses the generic trip points. The thermal
> framework can return the critical temperature directly.
>
> Remove the pointless get_trip_temp ops.
>
> Signed-off-by: Daniel Lezcano <[email protected]>

Reviewed-by: Fabio Estevam <[email protected]>

2023-03-09 10:46:04

by Fabio Estevam

[permalink] [raw]
Subject: Re: [PATCH v2 2/2] thermal/drivers/imx: Use the thermal framework for the trip point

On Thu, Mar 9, 2023 at 6:28 AM Daniel Lezcano <[email protected]> wrote:
>
> The thermal framework provides an API to get the trip related to a
> trip point id. We want to consolidate the generic trip points code,
> thus preventing the different drivers to deal with the trip points
> after they registered them.
>
> The set_trip_temp ops will be changed regarding the above changes but
> first we need to rework a bit the different implementation in the
> drivers.
>
> The goal is to prevent using the trip id but use a trip point passed
> as parameter which will contain all the needed information.
>
> As we don't have the trip point passed as parameter yet, we get the
> trip point using the generic trip thermal framewrok APIs and use it to
> take exactly the same decisions.
>
> The difference with this change and the previous code is from where we
> get the thermal trip point (which is the same).
>
> No functional change intended.
>
> Signed-off-by: Daniel Lezcano <[email protected]>
> ---
> V2:
> - Remove extra tab inserted in the previous version

Reviewed-by: Fabio Estevam <[email protected]>

2023-03-13 10:53:42

by Daniel Lezcano

[permalink] [raw]
Subject: Re: [PATCH v2 1/2] thermal/drivers/imx: Remove get_trip_temp ops

On 09/03/2023 10:28, Daniel Lezcano wrote:
> The i.MX thermal sensor uses the generic trip points. The thermal
> framework can return the critical temperature directly.
>
> Remove the pointless get_trip_temp ops.
>
> Signed-off-by: Daniel Lezcano <[email protected]>
> ---

Applied, thanks


--
<http://www.linaro.org/> Linaro.org │ Open source software for ARM SoCs

Follow Linaro: <http://www.facebook.com/pages/Linaro> Facebook |
<http://twitter.com/#!/linaroorg> Twitter |
<http://www.linaro.org/linaro-blog/> Blog