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
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.