All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Andersson <andersson@kernel.org>
To: Bhupesh Sharma <bhupesh.sharma@linaro.org>
Cc: linux-pm@vger.kernel.org, bhupesh.linux@gmail.com,
	linux-kernel@vger.kernel.org, bjorn.andersson@linaro.org,
	konrad.dybcio@somainline.org, linux-arm-msm@vger.kernel.org,
	daniel.lezcano@linaro.org, robh+dt@kernel.org, rafael@kernel.org,
	Amit Kucheria <amitk@kernel.org>,
	Thara Gopinath <thara.gopinath@gmail.com>
Subject: Re: [PATCH v3 4/4] thermal: qcom: tsens: Add reinit quirk support for tsens v2 controllers
Date: Mon, 29 Aug 2022 17:14:53 -0500	[thread overview]
Message-ID: <20220829221453.6qexbhvsuqw5wmge@builder.lan> (raw)
In-Reply-To: <20220804054638.3197294-5-bhupesh.sharma@linaro.org>

On Thu, Aug 04, 2022 at 11:16:38AM +0530, Bhupesh Sharma wrote:
> Some Qualcomm tsens v2 controllers like those present on
> sm8150 SoC might require re-initialization via trustzone
> [via scm call(s)] when it enters a 'bad state' causing
> sensor temperatures/interrupts status to be in an
> 'invalid' state.
> 
> Add hooks for the same in the qcom tsens driver.
> 
> Devices requiring the same can pass the relevant
> compatible string in dt and the driver hook can
> be used accordingly.
> 
> Cc: Bjorn Andersson <bjorn.andersson@linaro.org>
> Cc: Amit Kucheria <amitk@kernel.org>
> Cc: Thara Gopinath <thara.gopinath@gmail.com>
> Cc: linux-pm@vger.kernel.org
> Cc: linux-arm-msm@vger.kernel.org
> Signed-off-by: Bhupesh Sharma <bhupesh.sharma@linaro.org>

Reviewed-by: Bjorn Andersson <andersson@kernel.org>

> ---
>  drivers/thermal/qcom/tsens-v2.c | 12 ++++++++++++
>  drivers/thermal/qcom/tsens.c    |  3 +++
>  drivers/thermal/qcom/tsens.h    |  2 +-
>  3 files changed, 16 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/thermal/qcom/tsens-v2.c b/drivers/thermal/qcom/tsens-v2.c
> index f521e4479cc5..431f17f99d34 100644
> --- a/drivers/thermal/qcom/tsens-v2.c
> +++ b/drivers/thermal/qcom/tsens-v2.c
> @@ -104,6 +104,18 @@ struct tsens_plat_data data_tsens_v2 = {
>  	.fields	= tsens_v2_regfields,
>  };
>  
> +/*
> + * For some tsens v2 controllers, its suggested to monitor the
> + * controller health periodically and in case an issue is detected
> + * to reinit tsens controller via trustzone.
> + */
> +struct tsens_plat_data data_tsens_v2_reinit = {
> +	.ops		= &ops_generic_v2,
> +	.feat		= &tsens_v2_feat,
> +	.needs_reinit_wa = true,
> +	.fields	= tsens_v2_regfields,
> +};
> +
>  /* Kept around for backward compatibility with old msm8996.dtsi */
>  struct tsens_plat_data data_8996 = {
>  	.num_sensors	= 13,
> diff --git a/drivers/thermal/qcom/tsens.c b/drivers/thermal/qcom/tsens.c
> index c2d085fb5447..928b6a44fda8 100644
> --- a/drivers/thermal/qcom/tsens.c
> +++ b/drivers/thermal/qcom/tsens.c
> @@ -1145,6 +1145,9 @@ static const struct of_device_id tsens_table[] = {
>  	}, {
>  		.compatible = "qcom,msm8996-tsens",
>  		.data = &data_8996,
> +	}, {
> +		.compatible = "qcom,sm8150-tsens",
> +		.data = &data_tsens_v2_reinit,
>  	}, {
>  		.compatible = "qcom,tsens-v1",
>  		.data = &data_tsens_v1,
> diff --git a/drivers/thermal/qcom/tsens.h b/drivers/thermal/qcom/tsens.h
> index 900d2a74d25e..03cc3a790972 100644
> --- a/drivers/thermal/qcom/tsens.h
> +++ b/drivers/thermal/qcom/tsens.h
> @@ -607,6 +607,6 @@ extern struct tsens_plat_data data_8916, data_8939, data_8974, data_9607;
>  extern struct tsens_plat_data data_tsens_v1, data_8976;
>  
>  /* TSENS v2 targets */
> -extern struct tsens_plat_data data_8996, data_tsens_v2;
> +extern struct tsens_plat_data data_8996, data_tsens_v2_reinit, data_tsens_v2;
>  
>  #endif /* __QCOM_TSENS_H__ */
> -- 
> 2.35.3
> 

  reply	other threads:[~2022-08-29 22:15 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-08-04  5:46 [PATCH v3 0/4] Add support for tsens controller reinit via trustzone Bhupesh Sharma
2022-08-04  5:46 ` [PATCH v3 1/4] firmware: qcom: scm: Add support for tsens reinit workaround Bhupesh Sharma
2022-08-29 22:15   ` Bjorn Andersson
2022-08-30 17:03     ` Bhupesh Sharma
2022-08-04  5:46 ` [PATCH v3 2/4] thermal: qcom: tsens: Add hooks for supplying platform specific reinit quirks Bhupesh Sharma
2022-08-04  5:46 ` [PATCH v3 3/4] thermal: qcom: tsens: Add driver support for re-initialization quirk Bhupesh Sharma
2022-08-29 22:14   ` Bjorn Andersson
2022-08-30 17:14     ` Bhupesh Sharma
2022-08-04  5:46 ` [PATCH v3 4/4] thermal: qcom: tsens: Add reinit quirk support for tsens v2 controllers Bhupesh Sharma
2022-08-29 22:14   ` Bjorn Andersson [this message]
2022-08-25  5:00 ` [PATCH v3 0/4] Add support for tsens controller reinit via trustzone Bhupesh Sharma

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20220829221453.6qexbhvsuqw5wmge@builder.lan \
    --to=andersson@kernel.org \
    --cc=amitk@kernel.org \
    --cc=bhupesh.linux@gmail.com \
    --cc=bhupesh.sharma@linaro.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=daniel.lezcano@linaro.org \
    --cc=konrad.dybcio@somainline.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rafael@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=thara.gopinath@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.