From 7cece1c6dcc8169c01fa6676223bff25843af16a Mon Sep 17 00:00:00 2001 From: Ram Chandrasekar Date: Fri, 23 Apr 2021 10:56:13 -0700 Subject: [PATCH] drivers: thermal: qmi_sensor: Add support for new sensors Add support for new QMI sensors. Here is the list of sensors that are newly added, qtm_therm modem_bcl_warn sdr0_pa0 sdr0_pa1 sdr0_pa2 sdr0_pa3 sdr0_pa4 sdr0_pa5 sdr0 sdr1_pa0 sdr1_pa1 sdr1_pa2 sdr1_pa3 sdr1_pa4 sdr1_pa5 sdr1 mmw0 mmw1 mmw2 mmw3 mmw_ific0 This will enable these sensors to be registered with thermal framework. Change-Id: I5ea49478afee82f7058247ee7e0e505955423e72 Signed-off-by: Ram Chandrasekar --- drivers/thermal/qcom/qmi_sensors.c | 46 ++++++++++++++++++++++++++++-- 1 file changed, 44 insertions(+), 2 deletions(-) diff --git a/drivers/thermal/qcom/qmi_sensors.c b/drivers/thermal/qcom/qmi_sensors.c index ff9763af1f0d..3ce73776ee38 100644 --- a/drivers/thermal/qcom/qmi_sensors.c +++ b/drivers/thermal/qcom/qmi_sensors.c @@ -1,6 +1,6 @@ // SPDX-License-Identifier: GPL-2.0-only /* - * Copyright (c) 2018-2020, The Linux Foundation. All rights reserved. + * Copyright (c) 2018-2021, The Linux Foundation. All rights reserved. */ #define pr_fmt(fmt) "%s:%s " fmt, KBUILD_MODNAME, __func__ @@ -70,6 +70,27 @@ enum qmi_ts_sensor { QMI_TS_QFE_WTR_PA2_FR1, QMI_TS_QFE_WTR_PA3_FR1, QMI_TS_QFE_WTR0_FR1, + QMI_TS_QTM_THERM, + QMI_TS_BCL_WARN, + QMI_TS_SDR0_PA0, + QMI_TS_SDR0_PA1, + QMI_TS_SDR0_PA2, + QMI_TS_SDR0_PA3, + QMI_TS_SDR0_PA4, + QMI_TS_SDR0_PA5, + QMI_TS_SDR0, + QMI_TS_SDR1_PA0, + QMI_TS_SDR1_PA1, + QMI_TS_SDR1_PA2, + QMI_TS_SDR1_PA3, + QMI_TS_SDR1_PA4, + QMI_TS_SDR1_PA5, + QMI_TS_SDR1, + QMI_TS_MMW0, + QMI_TS_MMW1, + QMI_TS_MMW2, + QMI_TS_MMW3, + QMI_TS_MMW_IFIC0, QMI_TS_MAX_NR }; @@ -141,6 +162,27 @@ static char sensor_clients[QMI_TS_MAX_NR][QMI_CLIENT_NAME_LENGTH] = { {"qfe_wtr_pa2_fr1"}, {"qfe_wtr_pa3_fr1"}, {"qfe_wtr0_fr1"}, + {"qtm_therm"}, + {"modem_bcl_warn"}, + {"sdr0_pa0"}, + {"sdr0_pa1"}, + {"sdr0_pa2"}, + {"sdr0_pa3"}, + {"sdr0_pa4"}, + {"sdr0_pa5"}, + {"sdr0"}, + {"sdr1_pa0"}, + {"sdr1_pa1"}, + {"sdr1_pa2"}, + {"sdr1_pa3"}, + {"sdr1_pa4"}, + {"sdr1_pa5"}, + {"sdr1"}, + {"mmw0"}, + {"mmw1"}, + {"mmw2"}, + {"mmw3"}, + {"mmw_ific0"}, }; static int32_t encode_qmi(int32_t val) @@ -463,7 +505,7 @@ static int verify_sensor_and_register(struct qmi_ts_instance *ts) for (i = 0; i < ts_resp->sensor_list_len; i++) { struct qmi_sensor *qmi_sens = NULL; - + pr_debug("QMI sensor:%s\n", ts_resp->sensor_list[i].sensor_id); list_for_each_entry(qmi_sens, &ts->ts_sensor_list, ts_node) { if ((strncasecmp(qmi_sens->qmi_name,