diff options
| -rw-r--r-- | drivers/acpi/int340x_thermal.c | 11 | ||||
| -rw-r--r-- | drivers/thermal/int340x_thermal/acpi_thermal_rel.c | 16 | ||||
| -rw-r--r-- | drivers/thermal/int340x_thermal/processor_thermal_device.c | 2 |
3 files changed, 13 insertions, 16 deletions
diff --git a/drivers/acpi/int340x_thermal.c b/drivers/acpi/int340x_thermal.c index a27d31d1ba24..9dcf83682e36 100644 --- a/drivers/acpi/int340x_thermal.c +++ b/drivers/acpi/int340x_thermal.c | |||
| @@ -14,10 +14,10 @@ | |||
| 14 | 14 | ||
| 15 | #include "internal.h" | 15 | #include "internal.h" |
| 16 | 16 | ||
| 17 | #define DO_ENUMERATION 0x01 | 17 | #define INT3401_DEVICE 0X01 |
| 18 | static const struct acpi_device_id int340x_thermal_device_ids[] = { | 18 | static const struct acpi_device_id int340x_thermal_device_ids[] = { |
| 19 | {"INT3400", DO_ENUMERATION }, | 19 | {"INT3400"}, |
| 20 | {"INT3401"}, | 20 | {"INT3401", INT3401_DEVICE}, |
| 21 | {"INT3402"}, | 21 | {"INT3402"}, |
| 22 | {"INT3403"}, | 22 | {"INT3403"}, |
| 23 | {"INT3404"}, | 23 | {"INT3404"}, |
| @@ -34,7 +34,10 @@ static int int340x_thermal_handler_attach(struct acpi_device *adev, | |||
| 34 | const struct acpi_device_id *id) | 34 | const struct acpi_device_id *id) |
| 35 | { | 35 | { |
| 36 | #if defined(CONFIG_INT340X_THERMAL) || defined(CONFIG_INT340X_THERMAL_MODULE) | 36 | #if defined(CONFIG_INT340X_THERMAL) || defined(CONFIG_INT340X_THERMAL_MODULE) |
| 37 | if (id->driver_data == DO_ENUMERATION) | 37 | acpi_create_platform_device(adev); |
| 38 | #elif defined(INTEL_SOC_DTS_THERMAL) || defined(INTEL_SOC_DTS_THERMAL_MODULE) | ||
| 39 | /* Intel SoC DTS thermal driver needs INT3401 to set IRQ descriptor */ | ||
| 40 | if (id->driver_data == INT3401_DEVICE) | ||
| 38 | acpi_create_platform_device(adev); | 41 | acpi_create_platform_device(adev); |
| 39 | #endif | 42 | #endif |
| 40 | return 1; | 43 | return 1; |
diff --git a/drivers/thermal/int340x_thermal/acpi_thermal_rel.c b/drivers/thermal/int340x_thermal/acpi_thermal_rel.c index 231cabc16e16..2c2ec7666eb1 100644 --- a/drivers/thermal/int340x_thermal/acpi_thermal_rel.c +++ b/drivers/thermal/int340x_thermal/acpi_thermal_rel.c | |||
| @@ -119,15 +119,11 @@ int acpi_parse_trt(acpi_handle handle, int *trt_count, struct trt **trtp, | |||
| 119 | continue; | 119 | continue; |
| 120 | 120 | ||
| 121 | result = acpi_bus_get_device(trt->source, &adev); | 121 | result = acpi_bus_get_device(trt->source, &adev); |
| 122 | if (!result) | 122 | if (result) |
| 123 | acpi_create_platform_device(adev); | ||
| 124 | else | ||
| 125 | pr_warn("Failed to get source ACPI device\n"); | 123 | pr_warn("Failed to get source ACPI device\n"); |
| 126 | 124 | ||
| 127 | result = acpi_bus_get_device(trt->target, &adev); | 125 | result = acpi_bus_get_device(trt->target, &adev); |
| 128 | if (!result) | 126 | if (result) |
| 129 | acpi_create_platform_device(adev); | ||
| 130 | else | ||
| 131 | pr_warn("Failed to get target ACPI device\n"); | 127 | pr_warn("Failed to get target ACPI device\n"); |
| 132 | } | 128 | } |
| 133 | 129 | ||
| @@ -206,16 +202,12 @@ int acpi_parse_art(acpi_handle handle, int *art_count, struct art **artp, | |||
| 206 | 202 | ||
| 207 | if (art->source) { | 203 | if (art->source) { |
| 208 | result = acpi_bus_get_device(art->source, &adev); | 204 | result = acpi_bus_get_device(art->source, &adev); |
| 209 | if (!result) | 205 | if (result) |
| 210 | acpi_create_platform_device(adev); | ||
| 211 | else | ||
| 212 | pr_warn("Failed to get source ACPI device\n"); | 206 | pr_warn("Failed to get source ACPI device\n"); |
| 213 | } | 207 | } |
| 214 | if (art->target) { | 208 | if (art->target) { |
| 215 | result = acpi_bus_get_device(art->target, &adev); | 209 | result = acpi_bus_get_device(art->target, &adev); |
| 216 | if (!result) | 210 | if (result) |
| 217 | acpi_create_platform_device(adev); | ||
| 218 | else | ||
| 219 | pr_warn("Failed to get source ACPI device\n"); | 211 | pr_warn("Failed to get source ACPI device\n"); |
| 220 | } | 212 | } |
| 221 | } | 213 | } |
diff --git a/drivers/thermal/int340x_thermal/processor_thermal_device.c b/drivers/thermal/int340x_thermal/processor_thermal_device.c index 31bb553aac26..0fe5dbbea968 100644 --- a/drivers/thermal/int340x_thermal/processor_thermal_device.c +++ b/drivers/thermal/int340x_thermal/processor_thermal_device.c | |||
| @@ -130,6 +130,8 @@ static int proc_thermal_add(struct device *dev, | |||
| 130 | int ret; | 130 | int ret; |
| 131 | 131 | ||
| 132 | adev = ACPI_COMPANION(dev); | 132 | adev = ACPI_COMPANION(dev); |
| 133 | if (!adev) | ||
| 134 | return -ENODEV; | ||
| 133 | 135 | ||
| 134 | status = acpi_evaluate_object(adev->handle, "PPCC", NULL, &buf); | 136 | status = acpi_evaluate_object(adev->handle, "PPCC", NULL, &buf); |
| 135 | if (ACPI_FAILURE(status)) | 137 | if (ACPI_FAILURE(status)) |
