Re: [PATCH 3/6] net: stmmac: sun8i: Use devm_regulator_get for PHY regulator

From: Andrew Lunn
Date: Tue Aug 20 2019 - 11:57:57 EST


On Tue, Aug 20, 2019 at 05:47:14PM +0200, OndÅej Jirman wrote:
> Hi Andrew,
>
> On Tue, Aug 20, 2019 at 05:39:39PM +0200, Andrew Lunn wrote:
> > On Tue, Aug 20, 2019 at 04:53:40PM +0200, megous@xxxxxxxxxx wrote:
> > > From: Ondrej Jirman <megous@xxxxxxxxxx>
> > >
> > > Use devm_regulator_get instead of devm_regulator_get_optional and rely
> > > on dummy supply. This avoids NULL checks before regulator_enable/disable
> > > calls.
> >
> > Hi Ondrej
> >
> > What do you mean by a dummy supply? I'm just trying to make sure you
> > are not breaking backwards compatibility.
>
> Sorry, I mean dummy regulator. See:
>
> https://elixir.bootlin.com/linux/latest/source/drivers/regulator/core.c#L1874
>
> On systems that use DT (i.e. have_full_constraints() == true), when the
> regulator is not found (ENODEV, not specified in DT), regulator_get will return
> a fake dummy regulator that can be enabled/disabled, but doesn't do anything
> real.

Hi Ondrej

But we also gain a new warning:

dev_warn(dev,
"%s supply %s not found, using dummy regulator\n",
devname, id);

This regulator is clearly optional, so there should not be a warning.

Maybe you can add a new get_type, OPTIONAL_GET, which does not issue
the warning, but does give back a dummy regulator.

Thanks
Andrew