RE: [PATCH v3 2/3] power: sequencing: Add Renesas RZ/G3L Power Ready driver
Biju Das <[email protected]>
| Newsgroups | org.kernel.vger.linux-renesas-soc,org.kernel.vger.linux-kernel,org.kernel.vger.linux-pm |
|---|---|
| Message-ID | <TY3PR01MB113464399E7C6C5D6B72A423B86A52@TY3PR01MB11346.jpnprd01.prod.outlook.com> |
Hi Geert, Thanks for the feedback. > -----Original Message----- > From: Geert Uytterhoeven <[email protected]> > Sent: 14 August 2026 15:12 > Subject: Re: [PATCH v3 2/3] power: sequencing: Add Renesas RZ/G3L Power Ready driver > > Hi Biju, > > On Wed, 12 Aug 2026 at 13:50, Biju <[email protected]> wrote: > > From: Biju Das <[email protected]> > > > > Add a power sequencing driver for the Renesas RZ/G3L PWRRDY module, > > which signals power readiness for various IPs (USB, DSI, CSI etc.) on > > the SoC. The driver binds as an auxiliary device to the parent SYSC > > driver, using its regmap to toggle the SYS_PWRRDY_N register bits, and > > exposes {usb,dsi,csi}-pwrrdy pwrseq targets. > > > > Signed-off-by: Biju Das <[email protected]> > > Thanks for your patch! > > > --- a/drivers/power/sequencing/Kconfig > > +++ b/drivers/power/sequencing/Kconfig > > @@ -27,6 +27,15 @@ config POWER_SEQUENCING_QCOM_WCN > > this driver is needed for correct power control or else we'd risk not > > respecting the required delays between enabling Bluetooth and WLAN. > > > > +config POWER_SEQUENCING_RENESAS_PWRRDY > > + tristate "Renesas Power Ready sequencing driver" > > + depends on SYSC_RZ || COMPILE_TEST > > + select AUXILIARY_BUS > > Could this cause circular dependency problems with ... You mean this to be fixed as?? depends on SYSC_RZ || (COMPILE_TEST && AUXILIARY_BUS) So that there won't be any build issue with COMPILE_TEST for Auxiliary bus API's > > > + help > > + Say Y here to enable the power sequencing driver for the Renesas > > + Power Ready signals. This driver handles the power ready signals > > + required to power on the various IP's on RZ/G3L platform. > > + > > config POWER_SEQUENCING_TH1520_GPU > > tristate "T-HEAD TH1520 GPU power sequencing driver" > > depends on (ARCH_THEAD && AUXILIARY_BUS) || COMPILE_TEST > > ... e.g. this, due to a mix of (a lot of) selects and (only three) depends? I believe this should give build error if COMPILE_TEST enabled for this driver Without AUXILIARY_BUS enabled?? > > > --- /dev/null > > +++ b/drivers/power/sequencing/pwrseq-renesas-pwrrdy.c > > > +static int pwrseq_rzg3l_pwrrdy_match(struct pwrseq_device *pwrseq, > > + struct device *dev) { > > + static const struct of_device_id pwrseq_rzg3l_consumer_match[] = { > > + { .compatible = "renesas,r9a08g046-mipi-dsi" }, > > + { .compatible = "renesas,r9a08g046-usbphy-ctrl" }, > > + { /* sentinel */ } > > + }; > > + const struct of_device_id *match; > > + > > + match = of_match_device(pwrseq_rzg3l_consumer_match, dev); > > As you don't use the actual match entries, replacing the rather large of_device_id structures by C > strings, and using of_device_is_compatible() would reduce kernel size. OK, will use of_device_is_compatible(). > > However, you might need the match entries (actually their match data) when adding support for future SoCs > that might use different registers and bits? Later, will switch to match entries when a future SoC have different registers and bits. Cheers, Biju