Message ID | 20220809220436.711020-10-daniel.lezcano@linaro.org (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | None | expand |
On 2022/08/10 7:04, Daniel Lezcano wrote: > The thermal framework gives the possibility to register the trip > points with the thermal zone. When that is done, no get_trip_* ops are > needed and they can be removed. > > Convert ops content logic into generic trip points and register them with > the > thermal zone. > > Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> > --- > drivers/thermal/uniphier_thermal.c | 26 +++++++++++--------------- > 1 file changed, 11 insertions(+), 15 deletions(-) > > diff --git a/drivers/thermal/uniphier_thermal.c > b/drivers/thermal/uniphier_thermal.c > index 4111d99ef50e..1675174480aa 100644 > --- a/drivers/thermal/uniphier_thermal.c > +++ b/drivers/thermal/uniphier_thermal.c > @@ -248,8 +248,7 @@ static int uniphier_tm_probe(struct platform_device > *pdev) > struct regmap *regmap; > struct device_node *parent; > struct uniphier_tm_dev *tdev; > - const struct thermal_trip *trips; > - int i, ret, irq, ntrips, crit_temp = INT_MAX; > + int i, ret, irq, crit_temp = INT_MAX; > > tdev = devm_kzalloc(dev, sizeof(*tdev), GFP_KERNEL); > if (!tdev) > @@ -296,20 +295,17 @@ static int uniphier_tm_probe(struct platform_device > *pdev) > return PTR_ERR(tdev->tz_dev); > } > > - /* get trip points */ > - trips = of_thermal_get_trip_points(tdev->tz_dev); > - ntrips = of_thermal_get_ntrips(tdev->tz_dev); > - if (ntrips > ALERT_CH_NUM) { > - dev_err(dev, "thermal zone has too many trips\n"); > - return -E2BIG; > - } > - > /* set alert temperatures */ > - for (i = 0; i < ntrips; i++) { > - if (trips[i].type == THERMAL_TRIP_CRITICAL && > - trips[i].temperature < crit_temp) > - crit_temp = trips[i].temperature; > - uniphier_tm_set_alert(tdev, i, trips[i].temperature); > + for (i = 0; i < thermal_zone_get_num_trips(tdev->tz_dev); i++) { > + > + struct thermal_trip trip; > + > + thermal_zone_get_trip(tdev->tz_dev, i, &trip); > + I found this line has white spaces. Otherwise, Reviewed-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> > + if (trip.type == THERMAL_TRIP_CRITICAL && > + trip.temperature < crit_temp) > + crit_temp = trip.temperature; > + uniphier_tm_set_alert(tdev, i, trip.temperature); > tdev->alert_en[i] = true; > } > if (crit_temp > CRITICAL_TEMP_LIMIT) { > --- Best Regards Kunihiko Hayashi
diff --git a/drivers/thermal/uniphier_thermal.c b/drivers/thermal/uniphier_thermal.c index 4111d99ef50e..1675174480aa 100644 --- a/drivers/thermal/uniphier_thermal.c +++ b/drivers/thermal/uniphier_thermal.c @@ -248,8 +248,7 @@ static int uniphier_tm_probe(struct platform_device *pdev) struct regmap *regmap; struct device_node *parent; struct uniphier_tm_dev *tdev; - const struct thermal_trip *trips; - int i, ret, irq, ntrips, crit_temp = INT_MAX; + int i, ret, irq, crit_temp = INT_MAX; tdev = devm_kzalloc(dev, sizeof(*tdev), GFP_KERNEL); if (!tdev) @@ -296,20 +295,17 @@ static int uniphier_tm_probe(struct platform_device *pdev) return PTR_ERR(tdev->tz_dev); } - /* get trip points */ - trips = of_thermal_get_trip_points(tdev->tz_dev); - ntrips = of_thermal_get_ntrips(tdev->tz_dev); - if (ntrips > ALERT_CH_NUM) { - dev_err(dev, "thermal zone has too many trips\n"); - return -E2BIG; - } - /* set alert temperatures */ - for (i = 0; i < ntrips; i++) { - if (trips[i].type == THERMAL_TRIP_CRITICAL && - trips[i].temperature < crit_temp) - crit_temp = trips[i].temperature; - uniphier_tm_set_alert(tdev, i, trips[i].temperature); + for (i = 0; i < thermal_zone_get_num_trips(tdev->tz_dev); i++) { + + struct thermal_trip trip; + + thermal_zone_get_trip(tdev->tz_dev, i, &trip); + + if (trip.type == THERMAL_TRIP_CRITICAL && + trip.temperature < crit_temp) + crit_temp = trip.temperature; + uniphier_tm_set_alert(tdev, i, trip.temperature); tdev->alert_en[i] = true; } if (crit_temp > CRITICAL_TEMP_LIMIT) {
The thermal framework gives the possibility to register the trip points with the thermal zone. When that is done, no get_trip_* ops are needed and they can be removed. Convert ops content logic into generic trip points and register them with the thermal zone. Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> --- drivers/thermal/uniphier_thermal.c | 26 +++++++++++--------------- 1 file changed, 11 insertions(+), 15 deletions(-)