]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
thermal/drivers/tegra/soctherma: Switch to devm cooling device registration
authorDaniel Lezcano <daniel.lezcano@oss.qualcomm.com>
Fri, 24 Apr 2026 16:00:19 +0000 (18:00 +0200)
committerDaniel Lezcano <daniel.lezcano@kernel.org>
Tue, 26 May 2026 11:24:27 +0000 (13:24 +0200)
commitee126267bc04bfb03816ae9d71ca24c5bf99e739
tree829922b07db139e202cb5fe134dc79f39909ee88
parent4ab6e05dc2f2b4ea3d8ffc0e0edfb8a5bcd2957f
thermal/drivers/tegra/soctherma: Switch to devm cooling device registration

Use devm_thermal_of_cooling_device_register() to simplify resource
management and avoid manual cleanup in error paths.

As a side effect this change has the benefit of solving an existing
issue. Before, the function tegra_soctherm_remove() only called
debugfs_remove_recursive() and never called thermal_cooling_device_unregister()
for any of the cooling devices registered here.

After the driver removal, the thermal framework's cdev list would
still hold references to thermal_cooling_device objects whose devdata
pointer (ts) pointed to memory already freed by the platform device's
devm cleanup.

With this change, the cooling device is unregistered when the driver
is removed, thus fixing the issue above.

Signed-off-by: Daniel Lezcano <daniel.lezcano@oss.qualcomm.com>
Signed-off-by: Daniel Lezcano <daniel.lezcano@kernel.org>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Link: https://patch.msgid.link/20260424160019.41710-2-daniel.lezcano@oss.qualcomm.com
drivers/thermal/tegra/soctherm.c