ACPI: thermal: Use thermal_zone_device()

In order to get the device associated with the thermal zone, let's use
the wrapper thermal_zone_device() instead of accessing directly the
content of the thermal zone device structure.

Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org>
[ rjw: Subject adjustment, removal of trailing white space ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
This commit is contained in:
Daniel Lezcano 2023-04-19 10:33:40 +02:00 committed by Rafael J. Wysocki
parent ba7894be5e
commit 66d39e74bf

View File

@ -789,6 +789,7 @@ static struct thermal_zone_device_ops acpi_thermal_zone_ops = {
static int acpi_thermal_register_thermal_zone(struct acpi_thermal *tz)
{
struct device *tzdev;
int trips = 0;
int result;
acpi_status status;
@ -820,12 +821,14 @@ static int acpi_thermal_register_thermal_zone(struct acpi_thermal *tz)
if (IS_ERR(tz->thermal_zone))
return -ENODEV;
tzdev = thermal_zone_device(tz->thermal_zone);
result = sysfs_create_link(&tz->device->dev.kobj,
&tz->thermal_zone->device.kobj, "thermal_zone");
&tzdev->kobj, "thermal_zone");
if (result)
goto unregister_tzd;
result = sysfs_create_link(&tz->thermal_zone->device.kobj,
result = sysfs_create_link(&tzdev->kobj,
&tz->device->dev.kobj, "device");
if (result)
goto remove_tz_link;
@ -849,7 +852,7 @@ static int acpi_thermal_register_thermal_zone(struct acpi_thermal *tz)
acpi_bus_detach:
acpi_bus_detach_private_data(tz->device->handle);
remove_dev_link:
sysfs_remove_link(&tz->thermal_zone->device.kobj, "device");
sysfs_remove_link(&tzdev->kobj, "device");
remove_tz_link:
sysfs_remove_link(&tz->device->dev.kobj, "thermal_zone");
unregister_tzd:
@ -860,8 +863,10 @@ unregister_tzd:
static void acpi_thermal_unregister_thermal_zone(struct acpi_thermal *tz)
{
struct device *tzdev = thermal_zone_device(tz->thermal_zone);
sysfs_remove_link(&tz->device->dev.kobj, "thermal_zone");
sysfs_remove_link(&tz->thermal_zone->device.kobj, "device");
sysfs_remove_link(&tzdev->kobj, "device");
thermal_zone_device_unregister(tz->thermal_zone);
tz->thermal_zone = NULL;
acpi_bus_detach_private_data(tz->device->handle);