The thermal API has a new thermal_zone_device_register() function which
is deprecating the older thermal_zone_device_register_with_trips() and
thermal_tripless_zone_device_register().
Migrate to the new thermal zone device registration function.
Signed-off-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
---
.../net/ethernet/chelsio/cxgb4/cxgb4_thermal.c | 18 ++++++++++++------
1 file changed, 12 insertions(+), 6 deletions(-)
@@ -37,12 +37,21 @@ static struct thermal_trip trip = { .type = THERMAL_TRIP_CRITICAL } ;
int cxgb4_thermal_init(struct adapter *adap)
{
+ struct thermal_zone_device_params tzdp = {
+ .ops = &cxgb4_thermal_ops,
+ .devdata = adap,
+ .trips = &trip,
+ .num_trips = num_trip,
+ };
struct ch_thermal *ch_thermal = &adap->ch_thermal;
- char ch_tz_name[THERMAL_NAME_LENGTH];
int num_trip = CXGB4_NUM_TRIPS;
u32 param, val;
int ret;
+ tzdp.type = kasprintf("cxgb4_%s", adap->name);
+ if (!tzdp.type)
+ return -ENOMEM;
+
/* on older firmwares we may not get the trip temperature,
* set the num of trips to 0.
*/
@@ -58,11 +67,8 @@ int cxgb4_thermal_init(struct adapter *adap)
trip.temperature = val * 1000;
}
- snprintf(ch_tz_name, sizeof(ch_tz_name), "cxgb4_%s", adap->name);
- ch_thermal->tzdev = thermal_zone_device_register_with_trips(ch_tz_name, &trip, num_trip,
- 0, adap,
- &cxgb4_thermal_ops,
- NULL, 0, 0);
+ ch_thermal->tzdev = thermal_zone_device_register(&tzdp);
+ kfree(tzdp.type);
if (IS_ERR(ch_thermal->tzdev)) {
ret = PTR_ERR(ch_thermal->tzdev);
dev_err(adap->pdev_dev, "Failed to register thermal zone\n");