@@ -270,6 +270,10 @@ static struct thermal_zone_device_ops tzd_ops = {
.get_trip_temp = pch_get_trip_temp,
};
+static struct thermal_zone_params tzd_params = {
+ .userspace = true,
+};
+
enum board_ids {
board_hsw,
board_wpt,
@@ -346,21 +350,16 @@ static int intel_pch_thermal_probe(struct pci_dev *pdev,
goto error_cleanup;
ptd->tzd = thermal_zone_device_register(bi->name, nr_trips, 0, ptd,
- &tzd_ops, NULL, 0, 0);
+ &tzd_ops, &tzd_params, 0, 0);
if (IS_ERR(ptd->tzd)) {
dev_err(&pdev->dev, "Failed to register thermal zone %s\n",
bi->name);
err = PTR_ERR(ptd->tzd);
goto error_cleanup;
}
- err = thermal_zone_device_enable(ptd->tzd);
- if (err)
- goto err_unregister;
return 0;
-err_unregister:
- thermal_zone_device_unregister(ptd->tzd);
error_cleanup:
iounmap(ptd->hw_base);
error_release:
The device isn't present under ACPI ThermalZone, and there's a dedicated userspace daemon for this thermal device. Let thermal core know it shouldn't handle trips to avoid surprising thermal shutdown. Signed-off-by: Kai-Heng Feng <kai.heng.feng@canonical.com> --- drivers/thermal/intel/intel_pch_thermal.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-)