thermal/drivers/hisilicon: Switch to new of API
The thermal OF code has a new API allowing to migrate the OF initialization to a simpler approach. The ops are no longer device tree specific and are the generic ones provided by the core code. Convert the ops to the thermal_zone_device_ops format and use the new API to register the thermal zone with these generic ops. Signed-off-by: Daniel Lezcano <daniel.lezcano@linexp.org> Link: https://lore.kernel.org/r/20220804224349.1926752-24-daniel.lezcano@linexp.org Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
This commit is contained in:
parent
ae11d6a87c
commit
5ee7811e9a
@ -434,9 +434,9 @@ static int hi3660_thermal_probe(struct hisi_thermal_data *data)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static int hisi_thermal_get_temp(void *__data, int *temp)
|
static int hisi_thermal_get_temp(struct thermal_zone_device *tz, int *temp)
|
||||||
{
|
{
|
||||||
struct hisi_thermal_sensor *sensor = __data;
|
struct hisi_thermal_sensor *sensor = tz->devdata;
|
||||||
struct hisi_thermal_data *data = sensor->data;
|
struct hisi_thermal_data *data = sensor->data;
|
||||||
|
|
||||||
*temp = data->ops->get_temp(sensor);
|
*temp = data->ops->get_temp(sensor);
|
||||||
@ -447,7 +447,7 @@ static int hisi_thermal_get_temp(void *__data, int *temp)
|
|||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
static const struct thermal_zone_of_device_ops hisi_of_thermal_ops = {
|
static const struct thermal_zone_device_ops hisi_of_thermal_ops = {
|
||||||
.get_temp = hisi_thermal_get_temp,
|
.get_temp = hisi_thermal_get_temp,
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -459,7 +459,7 @@ static irqreturn_t hisi_thermal_alarm_irq_thread(int irq, void *dev)
|
|||||||
|
|
||||||
data->ops->irq_handler(sensor);
|
data->ops->irq_handler(sensor);
|
||||||
|
|
||||||
hisi_thermal_get_temp(sensor, &temp);
|
temp = data->ops->get_temp(sensor);
|
||||||
|
|
||||||
if (temp >= sensor->thres_temp) {
|
if (temp >= sensor->thres_temp) {
|
||||||
dev_crit(&data->pdev->dev,
|
dev_crit(&data->pdev->dev,
|
||||||
@ -484,9 +484,9 @@ static int hisi_thermal_register_sensor(struct platform_device *pdev,
|
|||||||
int ret, i;
|
int ret, i;
|
||||||
const struct thermal_trip *trip;
|
const struct thermal_trip *trip;
|
||||||
|
|
||||||
sensor->tzd = devm_thermal_zone_of_sensor_register(&pdev->dev,
|
sensor->tzd = devm_thermal_of_zone_register(&pdev->dev,
|
||||||
sensor->id, sensor,
|
sensor->id, sensor,
|
||||||
&hisi_of_thermal_ops);
|
&hisi_of_thermal_ops);
|
||||||
if (IS_ERR(sensor->tzd)) {
|
if (IS_ERR(sensor->tzd)) {
|
||||||
ret = PTR_ERR(sensor->tzd);
|
ret = PTR_ERR(sensor->tzd);
|
||||||
sensor->tzd = NULL;
|
sensor->tzd = NULL;
|
||||||
|
Loading…
Reference in New Issue
Block a user