summaryrefslogtreecommitdiff
path: root/drivers/thermal/hisi_thermal.c
diff options
context:
space:
mode:
authorKevin Wangtao <kevin.wangtao@linaro.org>2017-10-22 10:54:32 +0200
committerEduardo Valentin <edubezval@gmail.com>2017-10-31 19:32:18 -0700
commita0678da82ca01771db57f53bfb7f0a5a7494900e (patch)
tree04fba7460d124b9dd00d2aadef32a0946688de4e /drivers/thermal/hisi_thermal.c
parent7a4ca51b704038d1d7f5e31177a7fa4d9dcb839e (diff)
thermal/drivers/hisi: Put platform code together
Reorganize the code for next patches by moving the functions upper in the file which will prevent a forward declaration. There is no functional change here. Signed-off-by: Kevin Wangtao <kevin.wangtao@linaro.org> Tested-by: Daniel Lezcano <daniel.lezcano@linaro.org> # hikey6220 Signed-off-by: Daniel Lezcano <daniel.lezcano@linaro.org> Signed-off-by: Eduardo Valentin <edubezval@gmail.com>
Diffstat (limited to 'drivers/thermal/hisi_thermal.c')
-rw-r--r--drivers/thermal/hisi_thermal.c76
1 files changed, 38 insertions, 38 deletions
diff --git a/drivers/thermal/hisi_thermal.c b/drivers/thermal/hisi_thermal.c
index 65f9e5c80741..a0b7e26e4796 100644
--- a/drivers/thermal/hisi_thermal.c
+++ b/drivers/thermal/hisi_thermal.c
@@ -201,6 +201,44 @@ static void hisi_thermal_disable_sensor(struct hisi_thermal_data *data)
clk_disable_unprepare(data->clk);
}
+static int hisi_thermal_setup(struct hisi_thermal_data *data)
+{
+ struct hisi_thermal_sensor *sensor = &data->sensor;
+ int ret;
+
+ /* enable clock for tsensor */
+ ret = clk_prepare_enable(data->clk);
+ if (ret)
+ return ret;
+
+ /* disable module firstly */
+ hisi_thermal_reset_enable(data->regs, 0);
+ hisi_thermal_enable(data->regs, 0);
+
+ /* select sensor id */
+ hisi_thermal_sensor_select(data->regs, sensor->id);
+
+ /* setting the hdak time */
+ hisi_thermal_hdak_set(data->regs, 0);
+
+ /* setting lag value between current temp and the threshold */
+ hisi_thermal_set_lag(data->regs, HISI_TEMP_LAG);
+
+ /* enable for interrupt */
+ hisi_thermal_alarm_set(data->regs, sensor->thres_temp);
+
+ hisi_thermal_reset_set(data->regs, HISI_TEMP_RESET);
+
+ /* enable module */
+ hisi_thermal_reset_enable(data->regs, 1);
+ hisi_thermal_enable(data->regs, 1);
+
+ hisi_thermal_alarm_clear(data->regs, 0);
+ hisi_thermal_alarm_enable(data->regs, 1);
+
+ return 0;
+}
+
static int hisi_thermal_get_temp(void *__data, int *temp)
{
struct hisi_thermal_data *data = __data;
@@ -291,44 +329,6 @@ static void hisi_thermal_toggle_sensor(struct hisi_thermal_sensor *sensor,
on ? THERMAL_DEVICE_ENABLED : THERMAL_DEVICE_DISABLED);
}
-static int hisi_thermal_setup(struct hisi_thermal_data *data)
-{
- struct hisi_thermal_sensor *sensor = &data->sensor;
- int ret;
-
- /* enable clock for tsensor */
- ret = clk_prepare_enable(data->clk);
- if (ret)
- return ret;
-
- /* disable module firstly */
- hisi_thermal_reset_enable(data->regs, 0);
- hisi_thermal_enable(data->regs, 0);
-
- /* select sensor id */
- hisi_thermal_sensor_select(data->regs, sensor->id);
-
- /* setting the hdak time */
- hisi_thermal_hdak_set(data->regs, 0);
-
- /* setting lag value between current temp and the threshold */
- hisi_thermal_set_lag(data->regs, HISI_TEMP_LAG);
-
- /* enable for interrupt */
- hisi_thermal_alarm_set(data->regs, sensor->thres_temp);
-
- hisi_thermal_reset_set(data->regs, HISI_TEMP_RESET);
-
- /* enable module */
- hisi_thermal_reset_enable(data->regs, 1);
- hisi_thermal_enable(data->regs, 1);
-
- hisi_thermal_alarm_clear(data->regs, 0);
- hisi_thermal_alarm_enable(data->regs, 1);
-
- return 0;
-}
-
static int hisi_thermal_probe(struct platform_device *pdev)
{
struct hisi_thermal_data *data;