From: sashiko-bot@kernel.org
To: "Simon Glass" <sjg@chromium.org>
Cc: conor+dt@kernel.org, devicetree@vger.kernel.org, robh@kernel.org
Subject: Re: [PATCH v3 2/6] clk: rockchip: Add clock controller for the RV1106
Date: Wed, 29 Jul 2026 13:54:27 +0000 [thread overview]
Message-ID: <20260729135427.A25DC1F00A3D@smtp.kernel.org> (raw)
In-Reply-To: <20260729133609.3465563-3-sjg@chromium.org>
Thank you for your contribution! Sashiko AI review found 2 potential issue(s) to consider:
- [High] Register configuration overlap between `CLK_RTC_32K` and `CLK_I2C1` multiplexers.
- [High] Missing reset controller implementation.
--
--- Patch [2]: [PATCH v3 2/6] clk: rockchip: Add clock controller for the RV1106 ---
commit fb3401adaaf1111eb7763ba91184635eca1fea67
Author: Simon Glass <sjg@chromium.org>
clk: rockchip: Add clock controller for the RV1106
Add the clock and reset controller driver for the Rockchip RV1106,
based on the vendor kernel from the Luckfox Pico SDK.
> diff --git a/drivers/clk/rockchip/clk-rv1106.c b/drivers/clk/rockchip/clk-rv1106.c
> new file mode 100644
> index 0000000000000..3f26573e6cb70
> --- /dev/null
> +++ b/drivers/clk/rockchip/clk-rv1106.c
> @@ -0,0 +1,1099 @@
[ ... ]
> +static struct rockchip_clk_branch rv1106_rtc32k_pmu_fracmux __initdata =
> + MUX(CLK_RTC_32K, "clk_rtc_32k", clk_rtc32k_pmu_p, CLK_SET_RATE_PARENT | CLK_SET_RATE_NO_REPARENT,
> + RV1106_PMUCLKSEL_CON(0), 6, 2, MFLAGS);
[ ... ]
> + GATE(PCLK_I2C1, "pclk_i2c1", "pclk_pmu_root", 0,
> + RV1106_PMUCLKGATE_CON(0), 3, GFLAGS),
> + COMPOSITE_NODIV(CLK_I2C1, "clk_i2c1", mux_200m_100m_24m_32k_p, 0,
> + RV1106_PMUCLKSEL_CON(0), 6, 2, MFLAGS,
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[Severity: High]
Does this code introduce a regression by assigning the same configuration
bits for both the RTC_32K and I2C1 clocks?
The multiplexer for clk_rtc32k_pmu_fracmux is defined at
RV1106_PMUCLKSEL_CON(0) shift 6 width 2. Here in rv1106_clk_branches, CLK_I2C1
is defined at the exact same register, shift, and width.
Will reparenting or setting the rate for one of these clocks inadvertently
overwrite the configuration of the other?
[ ... ]
> + /*
> + * The MMC drive and sample phase clocks have their control
> + * registers in the GRF region, so they can only be provided when
> + * the rockchip,grf property points at a valid syscon.
> + */
> + if (!IS_ERR(ctx->grf)) {
> + ret = rockchip_clk_add_grf(ctx, ctx->grf, grf_type_sys);
> + if (ret)
> + dev_err(dev, "failed to add grf: %d\n", ret);
> + else
> + rockchip_clk_register_branches(ctx,
> + rv1106_grf_clk_branches,
> + ARRAY_SIZE(rv1106_grf_clk_branches));
> + }
> +
> + rockchip_register_restart_notifier(ctx, RV1106_GLB_SRST_FST, NULL);
> +
> + rockchip_clk_of_add_provider(np, ctx);
> +
> + return 0;
> +}
[Severity: High]
Does this driver omit the reset controller registration?
The commit message states that this patch adds the clock and reset controller
driver, but rockchip_register_softrst() is not called in clk_rv1106_probe().
Will this regression cause peripheral drivers on this SoC to fail to probe
with -ENOENT or -EPROBE_DEFER if they request a reset from this CRU node in
their devicetree?
--
Sashiko AI review · https://sashiko.dev/#/patchset/20260729133609.3465563-1-sjg@chromium.org?part=2
next prev parent reply other threads:[~2026-07-29 13:54 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-29 13:35 [PATCH v3 0/6] Add support for the Rockchip RV1106 and RV1103 Simon Glass
2026-07-29 13:35 ` Simon Glass
2026-07-29 13:35 ` [PATCH v3 1/6] dt-bindings: clock: rockchip: Add RV1106 CRU support Simon Glass
2026-07-29 13:35 ` Simon Glass
2026-07-29 13:35 ` [PATCH v3 2/6] clk: rockchip: Add clock controller for the RV1106 Simon Glass
2026-07-29 13:35 ` Simon Glass
2026-07-29 13:54 ` sashiko-bot [this message]
2026-07-29 13:35 ` [PATCH v3 3/6] dt-bindings: soc: rockchip: grf: Add RV1106 compatibles Simon Glass
2026-07-29 13:35 ` Simon Glass
2026-07-29 13:35 ` [PATCH v3 4/6] ARM: dts: rockchip: Add support for RV1106 and RV1103 Simon Glass
2026-07-29 13:35 ` Simon Glass
2026-07-29 14:01 ` sashiko-bot
2026-07-29 13:35 ` [PATCH v3 5/6] dt-bindings: arm: rockchip: Add Luckfox Pico Mini B Simon Glass
2026-07-29 13:35 ` Simon Glass
2026-07-29 13:35 ` [PATCH v3 6/6] ARM: dts: " Simon Glass
2026-07-29 13:35 ` Simon Glass
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=20260729135427.A25DC1F00A3D@smtp.kernel.org \
--to=sashiko-bot@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=robh@kernel.org \
--cc=sashiko-reviews@lists.linux.dev \
--cc=sjg@chromium.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 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.