[PATCH] usb: i.MX: improve regulator handling

Marco Felsch m.felsch at pengutronix.de
Tue Oct 20 10:28:06 EDT 2020


On 20-10-20 16:09, Sascha Hauer wrote:
> On Tue, Oct 20, 2020 at 03:33:17PM +0200, Marco Felsch wrote:
> > Hi Uwe,
> > 
> > On 20-10-20 13:15, Uwe Kleine-König wrote:
> > > Instead of just ignoring errors related to regulator getting error out.
> > > In case there is no regulator in the device tree, regulator_get() returns
> > > the dummy regulator and not an error code, so the change is right for
> > > this situation, too.
> > > 
> > > Signed-off-by: Uwe Kleine-König <u.kleine-koenig at pengutronix.de>
> > > ---
> > >  drivers/usb/imx/chipidea-imx.c | 7 +++++--
> > >  1 file changed, 5 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/drivers/usb/imx/chipidea-imx.c b/drivers/usb/imx/chipidea-imx.c
> > > index 786beede6d89..dd0e3c1a2a58 100644
> > > --- a/drivers/usb/imx/chipidea-imx.c
> > > +++ b/drivers/usb/imx/chipidea-imx.c
> > > @@ -267,8 +267,11 @@ static int imx_chipidea_probe(struct device_d *dev)
> > >  	}
> > >  
> > >  	ci->vbus = regulator_get(dev, "vbus");
> > > -	if (IS_ERR(ci->vbus))
> > > -		ci->vbus = NULL;
> > > +	if (IS_ERR(ci->vbus)) {
> > > +		ret = ERR_PTR(ci->vbus);
> > > +		dev_err(dev, "Cannot get vbus regulator: %s\n", strerror(-ret));
> > > +		return ret;
> > 
> > Returning the error here can cause problems with exisiting boards, e.g.
> > if the regulator support is missing for the specified vbus regulator.
> > This is often the case since we have very limited regulator support for
> > now.
> 
> But when there is a regulator we also have to control it, right?

So you need to add each regulator driver or worst case you need to add
PMIC drivers. If I remember correctly, I added the same for mci which
broke a lot of boards. Later you reverted those commit. Now Oleksij
added the regulator support for the fec driver and people are starting 
to remove the phy-supply handle from the barebox-dt's (commit 84cf5cfa9a
("ARM: dts: imx6qdl: pfla02: Remove fec phy-supply")). I'm not again
this patch, just wanted to show the consequences of it.

Regards,
  Marco



More information about the barebox mailing list