devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
To: Bjorn Andersson <andersson@kernel.org>,
	 Michael Turquette <mturquette@baylibre.com>,
	 Stephen Boyd <sboyd@kernel.org>, Rob Herring <robh@kernel.org>,
	 Krzysztof Kozlowski <krzk+dt@kernel.org>,
	 Conor Dooley <conor+dt@kernel.org>,
	Taniya Das <quic_tdas@quicinc.com>,
	 Neil Armstrong <neil.armstrong@linaro.org>,
	 Philipp Zabel <p.zabel@pengutronix.de>,
	 Konrad Dybcio <konradybcio@kernel.org>
Cc: linux-arm-msm@vger.kernel.org, linux-clk@vger.kernel.org,
	 devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: [PATCH 09/14] clk: qcom: gdsc: add separate sleep state collapse vote support
Date: Thu, 17 Oct 2024 19:56:59 +0300	[thread overview]
Message-ID: <20241017-sar2130p-clocks-v1-9-f75e740f0a8d@linaro.org> (raw)
In-Reply-To: <20241017-sar2130p-clocks-v1-0-f75e740f0a8d@linaro.org>

Some platforms use separate collapse vote registers for the active and
sleep states. Extend gdsc_update_collapse_bit() to support separate
collapse_sleep_ctrl register.

Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
---
 drivers/clk/qcom/gdsc.c | 8 ++++++++
 drivers/clk/qcom/gdsc.h | 2 ++
 2 files changed, 10 insertions(+)

diff --git a/drivers/clk/qcom/gdsc.c b/drivers/clk/qcom/gdsc.c
index fa5fe4c2a2ee7786c2e8858f3e41301f639e5d59..95f8e90a8d25673c8a97a03f92cbdad25c3259db 100644
--- a/drivers/clk/qcom/gdsc.c
+++ b/drivers/clk/qcom/gdsc.c
@@ -133,6 +133,14 @@ static int gdsc_update_collapse_bit(struct gdsc *sc, bool val)
 	if (ret)
 		return ret;
 
+	if (sc->collapse_sleep_ctrl) {
+		ret = regmap_update_bits(sc->regmap, sc->collapse_sleep_ctrl, mask, val ? mask : 0);
+		if (ret) {
+			regmap_update_bits(sc->regmap, reg, mask, val ? 0 : mask);
+			return ret;
+		}
+	}
+
 	return 0;
 }
 
diff --git a/drivers/clk/qcom/gdsc.h b/drivers/clk/qcom/gdsc.h
index 1e2779b823d1c8ca077c9b4cd0a0dbdf5f9457ef..dab2e31be8f65408d6d29df42ad5105830760d3e 100644
--- a/drivers/clk/qcom/gdsc.h
+++ b/drivers/clk/qcom/gdsc.h
@@ -19,6 +19,7 @@ struct reset_controller_dev;
  * @regmap: regmap for MMIO accesses
  * @gdscr: gsdc control register
  * @collapse_ctrl: APCS collapse-vote register
+ * @collapse_sleep_ctrl: APCS collapse-vote register for the sleep state
  * @collapse_mask: APCS collapse-vote mask
  * @gds_hw_ctrl: gds_hw_ctrl register
  * @cxcs: offsets of branch registers to toggle mem/periph bits in
@@ -37,6 +38,7 @@ struct gdsc {
 	struct regmap			*regmap;
 	unsigned int			gdscr;
 	unsigned int			collapse_ctrl;
+	unsigned int			collapse_sleep_ctrl;
 	unsigned int			collapse_mask;
 	unsigned int			gds_hw_ctrl;
 	unsigned int			clamp_io_ctrl;

-- 
2.39.5


  parent reply	other threads:[~2024-10-17 16:57 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-10-17 16:56 [PATCH 00/14] clk: qcom: add support for clock controllers on the SAR2130P platform Dmitry Baryshkov
2024-10-17 16:56 ` [PATCH 01/14] dt-bindings: clock: qcom,rpmhcc: Add SAR2130P compatible Dmitry Baryshkov
2024-10-21  7:51   ` Krzysztof Kozlowski
2024-10-17 16:56 ` [PATCH 02/14] dt-bindings: clock: qcom: document SAR2130P Global Clock Controller Dmitry Baryshkov
2024-10-18  6:50   ` Krzysztof Kozlowski
2024-10-17 16:56 ` [PATCH 03/14] dt-bindings: clock: qcom,sm8550-tcsr: Add SAR2130P compatible Dmitry Baryshkov
2024-10-18  7:09   ` Krzysztof Kozlowski
2024-10-17 16:56 ` [PATCH 04/14] dt-bindings: clock: qcom,sm8550-dispcc: " Dmitry Baryshkov
2024-10-21  7:52   ` Krzysztof Kozlowski
2024-10-17 16:56 ` [PATCH 05/14] dt-bindings: clk: qcom,sm8450-gpucc: add SAR2130P compatibles Dmitry Baryshkov
2024-10-18  6:51   ` Krzysztof Kozlowski
2024-10-18  7:10   ` Krzysztof Kozlowski
2024-10-18  8:34     ` Dmitry Baryshkov
2024-10-17 16:56 ` [PATCH 06/14] clk: qcom: clk-branch: Add support for BRANCH_HALT_POLL flag Dmitry Baryshkov
2024-10-17 18:03   ` Stephen Boyd
2024-10-17 22:05     ` Dmitry Baryshkov
2024-10-18 11:02       ` Taniya Das
2024-10-18 11:12         ` Dmitry Baryshkov
2024-10-17 16:56 ` [PATCH 07/14] clk: qcom: clk-branch: Add support for SREG branch ops Dmitry Baryshkov
2024-10-17 18:10   ` Stephen Boyd
2024-10-17 22:00     ` Dmitry Baryshkov
2024-10-17 22:28       ` Stephen Boyd
2024-10-18  9:56         ` Dmitry Baryshkov
2024-10-18 10:50           ` Taniya Das
2024-10-18 10:53             ` Dmitry Baryshkov
2024-10-17 16:56 ` [PATCH 08/14] clk: qcom: rcg2: add clk_rcg2_shared_floor_ops Dmitry Baryshkov
2024-10-17 16:56 ` Dmitry Baryshkov [this message]
2024-10-18 10:28   ` [PATCH 09/14] clk: qcom: gdsc: add separate sleep state collapse vote support Taniya Das
2024-10-18 10:48     ` Dmitry Baryshkov
2024-10-17 16:57 ` [PATCH 10/14] clk: qcom: rpmh: add support for SAR2130P Dmitry Baryshkov
2024-10-17 19:11   ` Konrad Dybcio
2024-10-17 16:57 ` [PATCH 11/14] clk: qcom: add support for GCC on SAR2130P Dmitry Baryshkov
2024-10-20 23:30   ` kernel test robot
2024-10-20 23:52   ` kernel test robot
2024-10-17 16:57 ` [PATCH 12/14] clk: qcom: tcsrcc-sm8550: add SAR2130P support Dmitry Baryshkov
2024-10-17 19:13   ` Konrad Dybcio
2024-10-17 16:57 ` [PATCH 13/14] clk: qcom: dispcc-sm8550: enable support for SAR2130P Dmitry Baryshkov
2024-10-18  7:26   ` Neil Armstrong
2024-10-17 16:57 ` [PATCH 14/14] clk: qcom: add SAR2130P GPU Clock Controller support Dmitry Baryshkov
2024-10-17 19:21   ` Konrad Dybcio

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=20241017-sar2130p-clocks-v1-9-f75e740f0a8d@linaro.org \
    --to=dmitry.baryshkov@linaro.org \
    --cc=andersson@kernel.org \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=konradybcio@kernel.org \
    --cc=krzk+dt@kernel.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=mturquette@baylibre.com \
    --cc=neil.armstrong@linaro.org \
    --cc=p.zabel@pengutronix.de \
    --cc=quic_tdas@quicinc.com \
    --cc=robh@kernel.org \
    --cc=sboyd@kernel.org \
    /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).