Re: [PATCH 9/9] arm64: dts: renesas: rzg3s-smarc-som: Enable I3C
From: Claudiu Beznea
Date: Fri May 22 2026 - 09:35:04 EST
Hi, Wolfram,
On 5/22/26 15:29, Wolfram Sang wrote:
Hi Claudiu,
+ i3c_pins: i3c {
+ pins = "I3C_SDA", "I3C_SCL";
+#if SW_CONFIG4 == SW_ON
+ power-source = <1200>;
+#else
+ power-source = <1800>;
+#endif
+ input-enable;
+ renesas,i3c-standby = <0>;
+ };
+
+ i3c_standby_pins: i3c-standby {
+ pins = "I3C_SDA", "I3C_SCL";
+#if SW_CONFIG4 == SW_ON
+ power-source = <1200>;
+#else
+ power-source = <1800>;
+#endif
+ renesas,i3c-standby = <1>;
+ };
That doesn't look like HW description to me because the pins are the
same for regular and standby mode.
Yes, same pins, different states. Isn't that the role of different pinctrl entries in DT for the same node? E.g., for SHDI we use the same approach, same pins but different states. Bellow is an example from RZ/G3S but same approach is used for other Renesas SoCs as well:
https://elixir.bootlin.com/linux/v7.1-rc4/source/arch/arm64/boot/dts/renesas/rzg3s-smarc-som.dtsi#L305
https://elixir.bootlin.com/linux/v7.1-rc4/source/arch/arm64/boot/dts/renesas/rzg3s-smarc-som.dtsi#L321
Their state is changed when powering
down, but that should not need DT encoding, I'd think. The driver should
know what to do, or?
Through different pinctrl states different pinctrl settings are applied in the pin controller HW by calling well known pinctrl APIs from the consumer drivers (e.g. pinctrl_pm_select_sleep_state() in case of the I3C driver as proposed in [1]).
Is there another way the I3C driver (or any pinctrl driver consumer) could apply pinctrl settings?
[1] https://lore.kernel.org/all/20260522101815.1722909-18-claudiu.beznea@xxxxxxxxxx
--
Thank you,
Claudiu