thermal/drivers/hisi: Add the dual clusters sensors for hi3660

The code is ready to support multiple sensors on the hi3660. The DT
defines a thermal zone per cluster.

Add the little cluster sensor and let it bind with the thermal zone.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
This commit is contained in:
Daniel Lezcano 2018-09-25 11:03:12 +02:00 committed by Eduardo Valentin
parent ce8c0700dc
commit 8c6c36846f

View File

@ -424,14 +424,20 @@ static int hi3660_thermal_probe(struct hisi_thermal_data *data)
struct platform_device *pdev = data->pdev;
struct device *dev = &pdev->dev;
data->sensor = devm_kzalloc(dev, sizeof(*data->sensor), GFP_KERNEL);
data->nr_sensors = 2;
data->sensor = devm_kzalloc(dev, sizeof(*data->sensor) *
data->nr_sensors, GFP_KERNEL);
if (!data->sensor)
return -ENOMEM;
data->sensor[0].id = HI3660_BIG_SENSOR;
data->sensor[0].irq_name = "tsensor_a73";
data->sensor[0].data = data;
data->nr_sensors = 1;
data->sensor[1].id = HI3660_LITTLE_SENSOR;
data->sensor[1].irq_name = "tsensor_a53";
data->sensor[1].data = data;
return 0;
}
@ -443,8 +449,8 @@ static int hisi_thermal_get_temp(void *__data, int *temp)
*temp = data->ops->get_temp(sensor);
dev_dbg(&data->pdev->dev, "id=%d, temp=%d, thres=%d\n",
sensor->id, *temp, sensor->thres_temp);
dev_dbg(&data->pdev->dev, "tzd=%p, id=%d, temp=%d, thres=%d\n",
sensor->tzd, sensor->id, *temp, sensor->thres_temp);
return 0;
}