Commit 4a16c190 authored by Daniel Lezcano's avatar Daniel Lezcano Committed by Rafael J. Wysocki

thermal/hwmon: Use the right device for devm_thermal_add_hwmon_sysfs()

The devres variant of thermal_add_hwmon_sysfs() only takes the thermal
zone structure pointer as parameter.

Actually, it uses the tz->device to add it in the devres list.

It is preferable to use the device registering the thermal zone
instead of the thermal zone device itself. That prevents the driver
accessing the thermal zone structure internals and it is from my POV
more correct regarding how devm_ is used.
Signed-off-by: default avatarDaniel Lezcano <daniel.lezcano@linaro.org>
Acked-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> #amlogic_thermal
Acked-by: Jernej Skrabec <jernej.skrabec@gmail.com> #sun8i_thermal
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com> #MediaTek auxadc
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 8f3f4ad4
...@@ -285,7 +285,7 @@ static int amlogic_thermal_probe(struct platform_device *pdev) ...@@ -285,7 +285,7 @@ static int amlogic_thermal_probe(struct platform_device *pdev)
return ret; return ret;
} }
if (devm_thermal_add_hwmon_sysfs(pdata->tzd)) if (devm_thermal_add_hwmon_sysfs(&pdev->dev, pdata->tzd))
dev_warn(&pdev->dev, "Failed to add hwmon sysfs attributes\n"); dev_warn(&pdev->dev, "Failed to add hwmon sysfs attributes\n");
ret = amlogic_thermal_initialize(pdata); ret = amlogic_thermal_initialize(pdata);
......
...@@ -343,7 +343,7 @@ static int imx8mm_tmu_probe(struct platform_device *pdev) ...@@ -343,7 +343,7 @@ static int imx8mm_tmu_probe(struct platform_device *pdev)
} }
tmu->sensors[i].hw_id = i; tmu->sensors[i].hw_id = i;
if (devm_thermal_add_hwmon_sysfs(tmu->sensors[i].tzd)) if (devm_thermal_add_hwmon_sysfs(&pdev->dev, tmu->sensors[i].tzd))
dev_warn(&pdev->dev, "failed to add hwmon sysfs attributes\n"); dev_warn(&pdev->dev, "failed to add hwmon sysfs attributes\n");
} }
......
...@@ -116,7 +116,7 @@ static int imx_sc_thermal_probe(struct platform_device *pdev) ...@@ -116,7 +116,7 @@ static int imx_sc_thermal_probe(struct platform_device *pdev)
return ret; return ret;
} }
if (devm_thermal_add_hwmon_sysfs(sensor->tzd)) if (devm_thermal_add_hwmon_sysfs(&pdev->dev, sensor->tzd))
dev_warn(&pdev->dev, "failed to add hwmon sysfs attributes\n"); dev_warn(&pdev->dev, "failed to add hwmon sysfs attributes\n");
} }
......
...@@ -222,7 +222,7 @@ static int k3_bandgap_probe(struct platform_device *pdev) ...@@ -222,7 +222,7 @@ static int k3_bandgap_probe(struct platform_device *pdev)
goto err_alloc; goto err_alloc;
} }
if (devm_thermal_add_hwmon_sysfs(data[id].tzd)) if (devm_thermal_add_hwmon_sysfs(dev, data[id].tzd))
dev_warn(dev, "Failed to add hwmon sysfs attributes\n"); dev_warn(dev, "Failed to add hwmon sysfs attributes\n");
} }
......
...@@ -1210,7 +1210,7 @@ static int mtk_thermal_probe(struct platform_device *pdev) ...@@ -1210,7 +1210,7 @@ static int mtk_thermal_probe(struct platform_device *pdev)
goto err_disable_clk_peri_therm; goto err_disable_clk_peri_therm;
} }
ret = devm_thermal_add_hwmon_sysfs(tzdev); ret = devm_thermal_add_hwmon_sysfs(&pdev->dev, tzdev);
if (ret) if (ret)
dev_warn(&pdev->dev, "error in thermal_add_hwmon_sysfs"); dev_warn(&pdev->dev, "error in thermal_add_hwmon_sysfs");
......
...@@ -689,7 +689,7 @@ static int adc_tm5_register_tzd(struct adc_tm5_chip *adc_tm) ...@@ -689,7 +689,7 @@ static int adc_tm5_register_tzd(struct adc_tm5_chip *adc_tm)
return PTR_ERR(tzd); return PTR_ERR(tzd);
} }
adc_tm->channels[i].tzd = tzd; adc_tm->channels[i].tzd = tzd;
if (devm_thermal_add_hwmon_sysfs(tzd)) if (devm_thermal_add_hwmon_sysfs(adc_tm->dev, tzd))
dev_warn(adc_tm->dev, dev_warn(adc_tm->dev,
"Failed to add hwmon sysfs attributes\n"); "Failed to add hwmon sysfs attributes\n");
} }
......
...@@ -459,7 +459,7 @@ static int qpnp_tm_probe(struct platform_device *pdev) ...@@ -459,7 +459,7 @@ static int qpnp_tm_probe(struct platform_device *pdev)
return ret; return ret;
} }
if (devm_thermal_add_hwmon_sysfs(chip->tz_dev)) if (devm_thermal_add_hwmon_sysfs(&pdev->dev, chip->tz_dev))
dev_warn(&pdev->dev, dev_warn(&pdev->dev,
"Failed to add hwmon sysfs attributes\n"); "Failed to add hwmon sysfs attributes\n");
......
...@@ -1189,7 +1189,7 @@ static int tsens_register(struct tsens_priv *priv) ...@@ -1189,7 +1189,7 @@ static int tsens_register(struct tsens_priv *priv)
if (priv->ops->enable) if (priv->ops->enable)
priv->ops->enable(priv, i); priv->ops->enable(priv, i);
if (devm_thermal_add_hwmon_sysfs(tzd)) if (devm_thermal_add_hwmon_sysfs(priv->dev, tzd))
dev_warn(priv->dev, dev_warn(priv->dev,
"Failed to add hwmon sysfs attributes\n"); "Failed to add hwmon sysfs attributes\n");
} }
......
...@@ -157,7 +157,7 @@ static int qoriq_tmu_register_tmu_zone(struct device *dev, ...@@ -157,7 +157,7 @@ static int qoriq_tmu_register_tmu_zone(struct device *dev,
return ret; return ret;
} }
if (devm_thermal_add_hwmon_sysfs(tzd)) if (devm_thermal_add_hwmon_sysfs(dev, tzd))
dev_warn(dev, dev_warn(dev,
"Failed to add hwmon sysfs attributes\n"); "Failed to add hwmon sysfs attributes\n");
......
...@@ -475,7 +475,7 @@ static int sun8i_ths_register(struct ths_device *tmdev) ...@@ -475,7 +475,7 @@ static int sun8i_ths_register(struct ths_device *tmdev)
if (IS_ERR(tmdev->sensor[i].tzd)) if (IS_ERR(tmdev->sensor[i].tzd))
return PTR_ERR(tmdev->sensor[i].tzd); return PTR_ERR(tmdev->sensor[i].tzd);
if (devm_thermal_add_hwmon_sysfs(tmdev->sensor[i].tzd)) if (devm_thermal_add_hwmon_sysfs(tmdev->dev, tmdev->sensor[i].tzd))
dev_warn(tmdev->dev, dev_warn(tmdev->dev,
"Failed to add hwmon sysfs attributes\n"); "Failed to add hwmon sysfs attributes\n");
} }
......
...@@ -528,7 +528,7 @@ static int tegra_tsensor_register_channel(struct tegra_tsensor *ts, ...@@ -528,7 +528,7 @@ static int tegra_tsensor_register_channel(struct tegra_tsensor *ts,
return 0; return 0;
} }
if (devm_thermal_add_hwmon_sysfs(tsc->tzd)) if (devm_thermal_add_hwmon_sysfs(ts->dev, tsc->tzd))
dev_warn(ts->dev, "failed to add hwmon sysfs attributes\n"); dev_warn(ts->dev, "failed to add hwmon sysfs attributes\n");
return 0; return 0;
......
...@@ -263,7 +263,7 @@ static void devm_thermal_hwmon_release(struct device *dev, void *res) ...@@ -263,7 +263,7 @@ static void devm_thermal_hwmon_release(struct device *dev, void *res)
thermal_remove_hwmon_sysfs(*(struct thermal_zone_device **)res); thermal_remove_hwmon_sysfs(*(struct thermal_zone_device **)res);
} }
int devm_thermal_add_hwmon_sysfs(struct thermal_zone_device *tz) int devm_thermal_add_hwmon_sysfs(struct device *dev, struct thermal_zone_device *tz)
{ {
struct thermal_zone_device **ptr; struct thermal_zone_device **ptr;
int ret; int ret;
...@@ -280,7 +280,7 @@ int devm_thermal_add_hwmon_sysfs(struct thermal_zone_device *tz) ...@@ -280,7 +280,7 @@ int devm_thermal_add_hwmon_sysfs(struct thermal_zone_device *tz)
} }
*ptr = tz; *ptr = tz;
devres_add(&tz->device, ptr); devres_add(dev, ptr);
return ret; return ret;
} }
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
#ifdef CONFIG_THERMAL_HWMON #ifdef CONFIG_THERMAL_HWMON
int thermal_add_hwmon_sysfs(struct thermal_zone_device *tz); int thermal_add_hwmon_sysfs(struct thermal_zone_device *tz);
int devm_thermal_add_hwmon_sysfs(struct thermal_zone_device *tz); int devm_thermal_add_hwmon_sysfs(struct device *dev, struct thermal_zone_device *tz);
void thermal_remove_hwmon_sysfs(struct thermal_zone_device *tz); void thermal_remove_hwmon_sysfs(struct thermal_zone_device *tz);
#else #else
static inline int static inline int
...@@ -27,7 +27,7 @@ thermal_add_hwmon_sysfs(struct thermal_zone_device *tz) ...@@ -27,7 +27,7 @@ thermal_add_hwmon_sysfs(struct thermal_zone_device *tz)
} }
static inline int static inline int
devm_thermal_add_hwmon_sysfs(struct thermal_zone_device *tz) devm_thermal_add_hwmon_sysfs(struct device *dev, struct thermal_zone_device *tz)
{ {
return 0; return 0;
} }
......
...@@ -182,7 +182,7 @@ int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id, ...@@ -182,7 +182,7 @@ int ti_thermal_expose_sensor(struct ti_bandgap *bgp, int id,
ti_bandgap_set_sensor_data(bgp, id, data); ti_bandgap_set_sensor_data(bgp, id, data);
ti_bandgap_write_update_interval(bgp, data->sensor_id, interval); ti_bandgap_write_update_interval(bgp, data->sensor_id, interval);
if (devm_thermal_add_hwmon_sysfs(data->ti_thermal)) if (devm_thermal_add_hwmon_sysfs(bgp->dev, data->ti_thermal))
dev_warn(bgp->dev, "failed to add hwmon sysfs attributes\n"); dev_warn(bgp->dev, "failed to add hwmon sysfs attributes\n");
return 0; return 0;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment