devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
To: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>,
	Andy Gross <agross@kernel.org>,
	Bjorn Andersson <andersson@kernel.org>,
	Konrad Dybcio <konrad.dybcio@linaro.org>,
	Rob Herring <robh+dt@kernel.org>,
	Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,
	Amit Kucheria <amitk@kernel.org>,
	Thara Gopinath <thara.gopinath@gmail.com>,
	"Rafael J. Wysocki" <rafael@kernel.org>,
	Daniel Lezcano <daniel.lezcano@linaro.org>,
	Zhang Rui <rui.zhang@intel.com>
Cc: Shawn Guo <shawn.guo@linaro.org>,
	linux-arm-msm@vger.kernel.org, linux-pm@vger.kernel.org,
	devicetree@vger.kernel.org
Subject: Re: [PATCH v6 08/20] thermal/drivers/tsens: limit num_sensors to 9 for msm8939
Date: Sun, 1 Jan 2023 20:17:22 +0000	[thread overview]
Message-ID: <8dd9f17b-957c-61b3-ae64-85309cd1332c@linaro.org> (raw)
In-Reply-To: <20230101194034.831222-9-dmitry.baryshkov@linaro.org>

On 01/01/2023 19:40, Dmitry Baryshkov wrote:
> On msm8939 last (hwid=10) sensor was added in the hw revision 3.0.
> Calibration data for it was placed outside of the main calibration data
> blob, so it is not accessible by the current blob-parsing code.
> 
> Moreover data for the sensor's p2 is not contiguous in the fuses. This
> makes it hard to use nvmem_cell API to parse calibration data in a
> generic way.
> 
> Since the sensor doesn't seem to be actually used by the existing
> hardware, disable the sensor for now.
> 
> Fixes: 332bc8ebab2c ("thermal: qcom: tsens-v0_1: Add support for MSM8939")
> Cc: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
> Cc: Shawn Guo <shawn.guo@linaro.org>
> Acked-by: Shawn Guo <shawn.guo@linaro.org>
> Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
> ---
>   drivers/thermal/qcom/tsens-v0_1.c | 13 ++++---------
>   1 file changed, 4 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/thermal/qcom/tsens-v0_1.c b/drivers/thermal/qcom/tsens-v0_1.c
> index 6645c98ff56c..579028ea48f4 100644
> --- a/drivers/thermal/qcom/tsens-v0_1.c
> +++ b/drivers/thermal/qcom/tsens-v0_1.c
> @@ -285,7 +285,7 @@ static int calibrate_8939(struct tsens_priv *priv)
>   	u32 p1[10], p2[10];
>   	int mode = 0;
>   	u32 *qfprom_cdata;
> -	u32 cdata[6];
> +	u32 cdata[4];
>   
>   	qfprom_cdata = (u32 *)qfprom_read(priv->dev, "calib");
>   	if (IS_ERR(qfprom_cdata))
> @@ -296,8 +296,6 @@ static int calibrate_8939(struct tsens_priv *priv)
>   	cdata[1] = qfprom_cdata[13];
>   	cdata[2] = qfprom_cdata[0];
>   	cdata[3] = qfprom_cdata[1];
> -	cdata[4] = qfprom_cdata[22];
> -	cdata[5] = qfprom_cdata[21];
>   
>   	mode = (cdata[0] & MSM8939_CAL_SEL_MASK) >> MSM8939_CAL_SEL_SHIFT;
>   	dev_dbg(priv->dev, "calibration mode is %d\n", mode);
> @@ -314,8 +312,6 @@ static int calibrate_8939(struct tsens_priv *priv)
>   		p2[6] = (cdata[2] & MSM8939_S6_P2_MASK) >> MSM8939_S6_P2_SHIFT;
>   		p2[7] = (cdata[3] & MSM8939_S7_P2_MASK) >> MSM8939_S7_P2_SHIFT;
>   		p2[8] = (cdata[3] & MSM8939_S8_P2_MASK) >> MSM8939_S8_P2_SHIFT;
> -		p2[9] = (cdata[4] & MSM8939_S9_P2_MASK_0_4) >> MSM8939_S9_P2_SHIFT_0_4;
> -		p2[9] |= ((cdata[5] & MSM8939_S9_P2_MASK_5) >> MSM8939_S9_P2_SHIFT_5) << 5;
>   		for (i = 0; i < priv->num_sensors; i++)
>   			p2[i] = (base1 + p2[i]) << 2;
>   		fallthrough;
> @@ -331,7 +327,6 @@ static int calibrate_8939(struct tsens_priv *priv)
>   		p1[6] = (cdata[2] & MSM8939_S6_P1_MASK) >> MSM8939_S6_P1_SHIFT;
>   		p1[7] = (cdata[3] & MSM8939_S7_P1_MASK) >> MSM8939_S7_P1_SHIFT;
>   		p1[8] = (cdata[3] & MSM8939_S8_P1_MASK) >> MSM8939_S8_P1_SHIFT;
> -		p1[9] = (cdata[4] & MSM8939_S9_P1_MASK) >> MSM8939_S9_P1_SHIFT;
>   		for (i = 0; i < priv->num_sensors; i++)
>   			p1[i] = ((base0) + p1[i]) << 2;
>   		break;
> @@ -544,7 +539,7 @@ static int __init init_8939(struct tsens_priv *priv) {
>   	priv->sensor[6].slope = 2833;
>   	priv->sensor[7].slope = 2838;
>   	priv->sensor[8].slope = 2840;
> -	priv->sensor[9].slope = 2852;
> +	/* priv->sensor[9].slope = 2852; */
>   
>   	return init_common(priv);
>   }
> @@ -620,9 +615,9 @@ static const struct tsens_ops ops_8939 = {
>   };
>   
>   struct tsens_plat_data data_8939 = {
> -	.num_sensors	= 10,
> +	.num_sensors	= 9,
>   	.ops		= &ops_8939,
> -	.hw_ids		= (unsigned int []){ 0, 1, 2, 3, 5, 6, 7, 8, 9, 10 },
> +	.hw_ids		= (unsigned int []){ 0, 1, 2, 3, 5, 6, 7, 8, 9, /* 10 */ },
>   
>   	.feat		= &tsens_v0_1_feat,
>   	.fields	= tsens_v0_1_regfields,


Reviewed-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>

  reply	other threads:[~2023-01-01 20:17 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2023-01-01 19:40 [PATCH v6 00/20] thermal/drivers/tsens: specify nvmem cells in DT rather than parsing them manually Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 01/20] dt-bindings: thermal: tsens: add msm8956 compat Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 02/20] dt-bindings: thermal: tsens: support per-sensor calibration cells Dmitry Baryshkov
2023-01-02  8:42   ` Krzysztof Kozlowski
2023-01-01 19:40 ` [PATCH v6 03/20] dt-bindings: thermal: tsens: add per-sensor cells for msm8974 Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 04/20] thermal/drivers/tsens: Drop unnecessary hw_ids Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 05/20] thermal/drivers/tsens: Drop msm8976-specific defines Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 06/20] thermal/drivers/tsens: Sort out msm8976 vs msm8956 data Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 07/20] thermal/drivers/tsens: fix slope values for msm8939 Dmitry Baryshkov
2023-01-01 20:24   ` Bryan O'Donoghue
2023-01-01 21:30     ` Dmitry Baryshkov
2023-01-01 21:33       ` Bryan O'Donoghue
2023-01-01 19:40 ` [PATCH v6 08/20] thermal/drivers/tsens: limit num_sensors to 9 " Dmitry Baryshkov
2023-01-01 20:17   ` Bryan O'Donoghue [this message]
2023-01-01 19:40 ` [PATCH v6 09/20] thermal/drivers/tsens: Support using nvmem cells for calibration data Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 10/20] thermal/drivers/tsens: Support using nvmem cells for msm8974 calibration Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 11/20] thermal/drivers/tsens: Rework legacy calibration data parsers Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 12/20] thermal/drivers/tsens: Drop single-cell code for mdm9607 Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 13/20] thermal/drivers/tsens: Drop single-cell code for msm8939 Dmitry Baryshkov
2023-01-01 20:26   ` Bryan O'Donoghue
2023-01-01 19:40 ` [PATCH v6 14/20] thermal/drivers/tsens: Drop single-cell code for msm8976/msm8956 Dmitry Baryshkov
2023-01-02 12:20   ` AngeloGioacchino Del Regno
2023-01-01 19:40 ` [PATCH v6 15/20] arm64: dts: qcom: msm8956: use SoC-specific compat for tsens Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 16/20] arm64: dts: qcom: msm8916: specify per-sensor calibration cells Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 17/20] arm64: dts: qcom: msm8976: " Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 18/20] arm64: dts: qcom: qcs404: " Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 19/20] ARM: dts: qcom-msm8974: " Dmitry Baryshkov
2023-01-01 19:40 ` [PATCH v6 20/20] ARM: dts: qcom-apq8084: " Dmitry Baryshkov
2023-01-13  6:29 ` [PATCH v6 00/20] thermal/drivers/tsens: specify nvmem cells in DT rather than parsing them manually Dmitry Baryshkov
2023-01-13 10:32   ` Daniel Lezcano
2023-01-18 23:55 ` (subset) " Bjorn Andersson

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=8dd9f17b-957c-61b3-ae64-85309cd1332c@linaro.org \
    --to=bryan.odonoghue@linaro.org \
    --cc=agross@kernel.org \
    --cc=amitk@kernel.org \
    --cc=andersson@kernel.org \
    --cc=daniel.lezcano@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dmitry.baryshkov@linaro.org \
    --cc=konrad.dybcio@linaro.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rafael@kernel.org \
    --cc=robh+dt@kernel.org \
    --cc=rui.zhang@intel.com \
    --cc=shawn.guo@linaro.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).