Linux clock framework development
 help / color / mirror / Atom feed
From: sashiko-bot@kernel.org
To: "Abel Vesa" <abel.vesa@oss.qualcomm.com>
Cc: devicetree@vger.kernel.org, linux-clk@vger.kernel.org,
	robh@kernel.org, conor+dt@kernel.org
Subject: Re: [PATCH v4 23/52] clk: qcom: gcc-sc7280: Tie the CX power domain to controller
Date: Mon, 14 Sep 2026 15:21:27 +0000	[thread overview]
Message-ID: <20260914152128.40DCE1F000FF@smtp.kernel.org> (raw)
In-Reply-To: <20260914-qcom-tie-cx-to-gcc-v4-23-9d5a606ada33@oss.qualcomm.com>

Thank you for your contribution! Sashiko AI review found 1 potential issue(s) to consider:
- [High] Unclocked reset register access due to missing pm_runtime_get in qcom_reset_set_assert when use_rpm is enabled.
--

commit 8a72c09fdcc91da6e4bac8d90cd2e02793ef02c2
Author: Abel Vesa <abel.vesa@oss.qualcomm.com>

clk: qcom: gcc-sc7280: Tie the CX power domain to controller

This commit enables runtime PM for the GCC controller, allowing the CX power
domain to be powered down once all consumers have released their clocks and
GDSCs.

> diff --git a/drivers/clk/qcom/gcc-sc7280.c b/drivers/clk/qcom/gcc-sc7280.c
> index 4502926a2691a..bb8f6efb88b1c 100644
> --- a/drivers/clk/qcom/gcc-sc7280.c
> +++ b/drivers/clk/qcom/gcc-sc7280.c
> @@ -3446,6 +3446,7 @@ static const struct qcom_cc_desc gcc_sc7280_desc = {
>  	.num_resets = ARRAY_SIZE(gcc_sc7280_resets),
>  	.gdscs = gcc_sc7280_gdscs,
>  	.num_gdscs = ARRAY_SIZE(gcc_sc7280_gdscs),
> +	.use_rpm = true,

[Severity: High]
Does enabling runtime PM here cause unclocked register accesses during reset
operations?

When use_rpm is true, the GCC controller can be runtime suspended. However,
the reset operations do not appear to resume the device before accessing
hardware registers:

drivers/clk/qcom/reset.c:qcom_reset_set_assert() {
    ...
    regmap_update_bits(rst->regmap, map->reg, mask, assert ? mask : 0);
    ...
}

If a consumer driver calls reset_control_assert() while the GCC is suspended
(for example, during a resume path before clocks are enabled, or during
probe if fw_devlink is disabled), could this unpowered register access
trigger a synchronous external abort and crash the system?

Should qcom_reset_set_assert() and similar reset callbacks call
pm_runtime_resume_and_get() before touching the hardware to ensure the
CX domain is actively powered on?

>  };
>  
>  static const struct of_device_id gcc_sc7280_match_table[] = {

-- 
Sashiko AI review · https://sashiko.dev/#/patchset/20260914-qcom-tie-cx-to-gcc-v4-0-9d5a606ada33@oss.qualcomm.com?part=23

  reply	other threads:[~2026-09-14 15:21 UTC|newest]

Thread overview: 78+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-14 12:46 [PATCH v4 00/52] clk: qcom: Tie CX power domains to GCCs Abel Vesa
2026-09-14 12:47 ` [PATCH v4 01/52] dt-bindings: clock: qcom: gcc-sdm845: Add CX power domain Abel Vesa
2026-09-17  8:23   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 02/52] dt-bindings: clock: qcom: gcc-sm8150: " Abel Vesa
2026-09-17  8:25   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 03/52] dt-bindings: clock: qcom: gcc-sm8250: " Abel Vesa
2026-09-17  8:26   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 04/52] dt-bindings: clock: qcom: gcc-sm8350: " Abel Vesa
2026-09-17  8:29   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 05/52] dt-bindings: clock: qcom: gcc-sm8450: " Abel Vesa
2026-09-17  8:30   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 06/52] dt-bindings: clock: qcom: qcs615-gcc: " Abel Vesa
2026-09-17  8:30   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 07/52] dt-bindings: clock: qcom: sm8550-gcc: " Abel Vesa
2026-09-17  8:30   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 08/52] dt-bindings: clock: qcom: sm8650-gcc: " Abel Vesa
2026-09-17  8:31   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 09/52] dt-bindings: clock: qcom: sm8750-gcc: " Abel Vesa
2026-09-17  8:31   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 10/52] dt-bindings: clock: qcom: sm4450-gcc: " Abel Vesa
2026-09-17  8:31   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 11/52] dt-bindings: clock: qcom: gcc-sm6350: " Abel Vesa
2026-09-17  8:32   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 12/52] dt-bindings: clock: qcom: qcs8300-gcc: " Abel Vesa
2026-09-17  8:32   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 13/52] dt-bindings: clock: qcom: qdu1000-gcc: " Abel Vesa
2026-09-15  9:15   ` Taniya Das
2026-09-14 12:47 ` [PATCH v4 14/52] dt-bindings: clock: qcom: sdx75-gcc: " Abel Vesa
2026-09-17  8:32   ` Krzysztof Kozlowski
2026-09-14 12:47 ` [PATCH v4 15/52] clk: qcom: gcc-eliza: Tie the CX power domain to controller Abel Vesa
2026-09-14 13:44   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 16/52] clk: qcom: gcc-kaanapali: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 17/52] clk: qcom: gcc-qcs615: " Abel Vesa
2026-09-14 13:58   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 18/52] clk: qcom: gcc-qcs8300: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 19/52] clk: qcom: gcc-qdu1000: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 20/52] clk: qcom: gcc-sa8775p: " Abel Vesa
2026-09-14 14:31   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 21/52] clk: qcom: gcc-sar2130p: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 22/52] clk: qcom: gcc-sc7180: " Abel Vesa
2026-09-14 14:52   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 23/52] clk: qcom: gcc-sc7280: " Abel Vesa
2026-09-14 15:21   ` sashiko-bot [this message]
2026-09-15  8:06   ` Taniya Das
2026-09-14 12:47 ` [PATCH v4 24/52] clk: qcom: gcc-sdm670: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 25/52] clk: qcom: gcc-sdm845: " Abel Vesa
2026-09-14 15:35   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 26/52] clk: qcom: gcc-sdx75: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 27/52] clk: qcom: gcc-sm4450: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 28/52] clk: qcom: gcc-sm6350: " Abel Vesa
2026-09-14 15:56   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 29/52] clk: qcom: gcc-sm8150: " Abel Vesa
2026-09-14 16:17   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 30/52] clk: qcom: gcc-sm8250: " Abel Vesa
2026-09-14 16:23   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 31/52] clk: qcom: gcc-sm8350: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 32/52] clk: qcom: gcc-sm8450: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 33/52] clk: qcom: gcc-sm8550: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 34/52] clk: qcom: gcc-sm8650: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 35/52] clk: qcom: gcc-sm8750: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 36/52] clk: qcom: gcc-x1e80100: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 37/52] arm64: dts: qcom: kaanapali: Add GCC CX power domain Abel Vesa
2026-09-14 12:47 ` [PATCH v4 38/52] arm64: dts: qcom: monaco: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 39/52] arm64: dts: qcom: qdu1000: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 40/52] arm64: dts: qcom: sar2130p: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 41/52] arm64: dts: qcom: sdm670: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 42/52] arm64: dts: qcom: sdx75: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 43/52] arm64: dts: qcom: sm4450: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 44/52] arm64: dts: qcom: sm6350: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 45/52] arm64: dts: qcom: sm8150: " Abel Vesa
2026-09-14 17:39   ` sashiko-bot
2026-09-14 12:47 ` [PATCH v4 46/52] arm64: dts: qcom: sm8250: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 47/52] arm64: dts: qcom: sm8350: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 48/52] arm64: dts: qcom: sm8450: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 49/52] arm64: dts: qcom: sm8550: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 50/52] arm64: dts: qcom: sm8650: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 51/52] arm64: dts: qcom: sm8750: " Abel Vesa
2026-09-14 12:47 ` [PATCH v4 52/52] arm64: dts: qcom: talos: " Abel Vesa

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=20260914152128.40DCE1F000FF@smtp.kernel.org \
    --to=sashiko-bot@kernel.org \
    --cc=abel.vesa@oss.qualcomm.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=linux-clk@vger.kernel.org \
    --cc=robh@kernel.org \
    --cc=sashiko-reviews@lists.linux.dev \
    /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