From mboxrd@z Thu Jan 1 00:00:00 1970 From: Bjorn Andersson Subject: Re: [PATCH v4 4/6] thermal: tsens: Add support for SDM845 Date: Mon, 2 Jul 2018 11:51:32 -0700 Message-ID: <20180702185132.GC2050@tuxbook-pro> References: <43e3ae530334efab3fa0151430879f03731e9daa.1530533998.git.amit.kucheria@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Return-path: Content-Disposition: inline In-Reply-To: <43e3ae530334efab3fa0151430879f03731e9daa.1530533998.git.amit.kucheria@linaro.org> Sender: linux-kernel-owner@vger.kernel.org To: Amit Kucheria Cc: linux-kernel@vger.kernel.org, rnayak@codeaurora.org, linux-arm-msm@vger.kernel.org, edubezval@gmail.com, smohanad@codeaurora.org, vivek.gautam@codeaurora.org, andy.gross@linaro.org, Zhang Rui , Rob Herring , Mark Rutland , Kees Cook , linux-pm@vger.kernel.org, devicetree@vger.kernel.org List-Id: linux-pm@vger.kernel.org On Mon 02 Jul 05:44 PDT 2018, Amit Kucheria wrote: > SDM845 uses v2.4.0 of the TSENS IP block but the get_temp() function > appears to be identical across v2.x.y in code seen so far. We use the > generic get_temp() function. > Reviewed-by: Bjorn Andersson Regards, Bjorn > Signed-off-by: Amit Kucheria > --- > Documentation/devicetree/bindings/thermal/qcom-tsens.txt | 2 ++ > drivers/thermal/qcom/tsens-v2.c | 6 +++++- > drivers/thermal/qcom/tsens.c | 6 ++++++ > drivers/thermal/qcom/tsens.h | 5 ++++- > 4 files changed, 17 insertions(+), 2 deletions(-) > > diff --git a/Documentation/devicetree/bindings/thermal/qcom-tsens.txt b/Documentation/devicetree/bindings/thermal/qcom-tsens.txt > index 06195e8..075182e 100644 > --- a/Documentation/devicetree/bindings/thermal/qcom-tsens.txt > +++ b/Documentation/devicetree/bindings/thermal/qcom-tsens.txt > @@ -5,6 +5,8 @@ Required properties: > - "qcom,msm8916-tsens" : For 8916 Family of SoCs > - "qcom,msm8974-tsens" : For 8974 Family of SoCs > - "qcom,msm8996-tsens" : For 8996 Family of SoCs > + - "qcom,tsens-v2.4.0" : For SDM845 Family of SoCs > + - "qcom,tsens-v2" : Generic fallback binding for any Soc using 2.x.y version of the tsens IP > > - reg: Address range of the thermal registers > - #thermal-sensor-cells : Should be 1. See ./thermal.txt for a description. > diff --git a/drivers/thermal/qcom/tsens-v2.c b/drivers/thermal/qcom/tsens-v2.c > index 2eca7ff..1871945 100644 > --- a/drivers/thermal/qcom/tsens-v2.c > +++ b/drivers/thermal/qcom/tsens-v2.c > @@ -69,8 +69,12 @@ static const struct tsens_ops ops_generic_v2 = { > .get_temp = get_temp_tsens_v2, > }; > > +const struct tsens_data data_tsens_v2 = { > + .ops = &ops_generic_v2, > +}; > + > +/* Kept around for backward compatibility with old msm8996.dtsi */ > const struct tsens_data data_8996 = { > .num_sensors = 13, > .ops = &ops_generic_v2, > }; > - > diff --git a/drivers/thermal/qcom/tsens.c b/drivers/thermal/qcom/tsens.c > index 3440166c..992ed17 100644 > --- a/drivers/thermal/qcom/tsens.c > +++ b/drivers/thermal/qcom/tsens.c > @@ -72,6 +72,12 @@ static const struct of_device_id tsens_table[] = { > }, { > .compatible = "qcom,msm8996-tsens", > .data = &data_8996, > + }, { > + .compatible = "qcom,tsens-v2.4.0", > + .data = &data_tsens_v2, > + }, { > + .compatible = "qcom,tsens-v2", > + .data = &data_tsens_v2, > }, > {} > }; > diff --git a/drivers/thermal/qcom/tsens.h b/drivers/thermal/qcom/tsens.h > index dc56e1e..69212cb 100644 > --- a/drivers/thermal/qcom/tsens.h > +++ b/drivers/thermal/qcom/tsens.h > @@ -87,6 +87,9 @@ void compute_intercept_slope(struct tsens_device *, u32 *, u32 *, u32); > int init_common(struct tsens_device *); > int get_temp_common(struct tsens_device *, int, int *); > > -extern const struct tsens_data data_8916, data_8974, data_8960, data_8996; > +/* TSENS v1 targets */ > +extern const struct tsens_data data_8916, data_8974, data_8960; > +/* TSENS v2 targets */ > +extern const struct tsens_data data_8996, data_tsens_v2; > > #endif /* __QCOM_TSENS_H__ */ > -- > 2.7.4 >