[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <1462880530-13935-1-git-send-email-j-keerthy@ti.com>
Date: Tue, 10 May 2016 17:12:10 +0530
From: Keerthy <j-keerthy@...com>
To: <edubezval@...il.com>, <rui.zhang@...el.com>
CC: <linux-kernel@...r.kernel.org>, <linux-omap@...r.kernel.org>,
<linux-pm@...r.kernel.org>, <nm@...com>, <j-keerthy@...com>
Subject: [PATCH] thermal: ti-soc-thermal: Add set_emul_temp hook
Setting the emulation temperature helps reproduce critical
temperature scenarios without risking the actual hardware at
extreme temperatures. Adding __ti_thermal_set_emul_temp as
the set_emul_temp hook.
Signed-off-by: Keerthy <j-keerthy@...com>
---
Tested the emulation temperature feature on DRA72-EVM.
drivers/thermal/ti-soc-thermal/ti-thermal-common.c | 15 +++++++++++++++
1 file changed, 15 insertions(+)
diff --git a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c
index b213a12..e6f7025 100644
--- a/drivers/thermal/ti-soc-thermal/ti-thermal-common.c
+++ b/drivers/thermal/ti-soc-thermal/ti-thermal-common.c
@@ -278,6 +278,20 @@ static int ti_thermal_get_trend(struct thermal_zone_device *thermal,
return 0;
}
+static int __ti_thermal_set_emul_temp(void *p, int temp)
+{
+ struct ti_thermal_data *data = p;
+ struct thermal_zone_device *tz;
+
+ tz = data->ti_thermal;
+
+ mutex_lock(&tz->lock);
+ tz->emul_temperature = temp;
+ mutex_unlock(&tz->lock);
+
+ return 0;
+}
+
/* Get critical temperature callback functions for thermal zone */
static int ti_thermal_get_crit_temp(struct thermal_zone_device *thermal,
int *temp)
@@ -289,6 +303,7 @@ static int ti_thermal_get_crit_temp(struct thermal_zone_device *thermal,
static const struct thermal_zone_of_device_ops ti_of_thermal_ops = {
.get_temp = __ti_thermal_get_temp,
.get_trend = __ti_thermal_get_trend,
+ .set_emul_temp = __ti_thermal_set_emul_temp,
};
static struct thermal_zone_device_ops ti_thermal_ops = {
--
1.9.1
Powered by blists - more mailing lists