summaryrefslogtreecommitdiffstats
path: root/drivers/thermal/int340x_thermal/int3403_thermal.c
diff options
context:
space:
mode:
authorSrinivas Pandruvada <srinivas.pandruvada@linux.intel.com>2017-06-06 16:00:41 -0700
committerZhang Rui <rui.zhang@intel.com>2017-06-29 10:53:38 +0800
commit4ca0e75e46b6ee408bdc334fff449323d476812c (patch)
tree32a4956b33b22278e8c203b1e1d20f86aa7a3334 /drivers/thermal/int340x_thermal/int3403_thermal.c
parent86326031e3d4dec828d966c19fe9fe1371d0a0a8 (diff)
downloadop-kernel-dev-4ca0e75e46b6ee408bdc334fff449323d476812c.zip
op-kernel-dev-4ca0e75e46b6ee408bdc334fff449323d476812c.tar.gz
thermal: int340x: check for sensor when PTYP is missing
For INT3403 sensor PTYP field is mandatory. But some platforms didn't have this field for sensors. This cause load failure for int3403 driver. This change checks for the presence of _TMP method and if present, then treats this device as a sensor. Signed-off-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> Signed-off-by: Zhang Rui <rui.zhang@intel.com>
Diffstat (limited to 'drivers/thermal/int340x_thermal/int3403_thermal.c')
-rw-r--r--drivers/thermal/int340x_thermal/int3403_thermal.c12
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/thermal/int340x_thermal/int3403_thermal.c b/drivers/thermal/int340x_thermal/int3403_thermal.c
index c4890c9..8a7f24d 100644
--- a/drivers/thermal/int340x_thermal/int3403_thermal.c
+++ b/drivers/thermal/int340x_thermal/int3403_thermal.c
@@ -238,8 +238,16 @@ static int int3403_add(struct platform_device *pdev)
status = acpi_evaluate_integer(priv->adev->handle, "PTYP",
NULL, &priv->type);
if (ACPI_FAILURE(status)) {
- result = -EINVAL;
- goto err;
+ unsigned long long tmp;
+
+ status = acpi_evaluate_integer(priv->adev->handle, "_TMP",
+ NULL, &tmp);
+ if (ACPI_FAILURE(status)) {
+ result = -EINVAL;
+ goto err;
+ } else {
+ priv->type = INT3403_TYPE_SENSOR;
+ }
}
platform_set_drvdata(pdev, priv);
OpenPOWER on IntegriCloud