[U-Boot] [PATCH] usb: dwc3: Handle case where setup_phy is not needed

Siva Durga Prasad Paladugu sivadur at xilinx.com
Mon Apr 1 10:38:59 UTC 2019


Hi Lukasz,

> -----Original Message-----
> From: Lukasz Majewski [mailto:lukma at denx.de]
> Sent: Monday, April 01, 2019 4:04 PM
> To: Siva Durga Prasad Paladugu <sivadur at xilinx.com>
> Cc: u-boot at lists.denx.de; marex at denx.de; jjhiblot at ti.com;
> sjg at chromium.org; patrick.delaunay at st.com; Michal Simek
> <michals at xilinx.com>
> Subject: Re: [PATCH] usb: dwc3: Handle case where setup_phy is not
> needed
> 
> On Mon, 1 Apr 2019 10:23:42 +0000
> Siva Durga Prasad Paladugu <sivadur at xilinx.com> wrote:
> 
> > Hi Lukasz,
> >
> > > -----Original Message-----
> > > From: Lukasz Majewski [mailto:lukma at denx.de]
> > > Sent: Monday, April 01, 2019 1:03 PM
> > > To: Siva Durga Prasad Paladugu <sivadur at xilinx.com>
> > > Cc: u-boot at lists.denx.de; marex at denx.de; jjhiblot at ti.com;
> > > sjg at chromium.org; patrick.delaunay at st.com; Michal Simek
> > > <michals at xilinx.com>
> > > Subject: Re: [PATCH] usb: dwc3: Handle case where setup_phy is not
> > > needed
> > >
> > > Hi Siva Durga Prasad Paladugu,
> > >
> > > > If CONFIG_PHY is not enabled then the dwc3_setup_phy() returns
> > > > ENOTSUPP which can be still valid and intentional
> > >                                 ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - could
> > > you elaborate on this a bit more?
> > >
> > > What is the use case when -ENOTSUPP is valid and intentional ?
> >
> > In the cases where phy will be setup by First stage boot loader itself
> > and don't want to do it again at u-boot.
> 
> I think that I saw some time ago similar patch for uart - on IMX IIRC (it was
> also setup by BootROM on SoC).
> 
> Maybe we would need some kind of switch in Kconfig to indicate this use
> case?
> 
> Another option would be to mark this in DTS as TI specific property?
> 
> My point is that we shall not proceed with the flow when we do receive -
> ENOTSUPP

TBH, I feel we should not call dwc3_setup_phy() if CONFIG_PHY is not enabled. If we look at dwc3_setup_phy() definition, it is under CONFIG_PHY.

Thanks,
Siva

> 
> >
> > Thanks,
> > Siva
> >
> > >
> > > > so modify error check to handle this -ENOTSUPP.
> > > >
> > > > Signed-off-by: Siva Durga Prasad Paladugu
> > > > <siva.durga.paladugu at xilinx.com> ---
> > > > drivers/usb/dwc3/dwc3-generic.c | 2 +-
> > > >  1 file changed, 1 insertion(+), 1 deletion(-)
> > > >
> > > > diff --git a/drivers/usb/dwc3/dwc3-generic.c
> > > > b/drivers/usb/dwc3/dwc3-generic.c index 3e6c494..a261d8d 100644
> > > > --- a/drivers/usb/dwc3/dwc3-generic.c
> > > > +++ b/drivers/usb/dwc3/dwc3-generic.c
> > > > @@ -47,7 +47,7 @@ static int dwc3_generic_peripheral_probe(struct
> > > > udevice *dev) struct dwc3 *dwc3 = &priv->dwc3;
> > > >
> > > >  	rc = dwc3_setup_phy(dev, &priv->phys, &priv->num_phys);
> > > > -	if (rc)
> > > > +	if (rc && rc != -ENOTSUPP)
> > > >  		return rc;
> > > >
> > > >  	dwc3->regs = map_physmem(priv->base, DWC3_OTG_REGS_END,
> > > > MAP_NOCACHE);
> > >
> > >
> > >
> > >
> > > Best regards,
> > >
> > > Lukasz Majewski
> > >
> > > --
> > >
> > > DENX Software Engineering GmbH,      Managing Director: Wolfgang
> > > Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell,
> > > Germany Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80
> Email:
> > > lukma at denx.de
> 
> 
> 
> 
> Best regards,
> 
> Lukasz Majewski
> 
> --
> 
> DENX Software Engineering GmbH,      Managing Director: Wolfgang Denk
> HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
> Phone: (+49)-8142-66989-59 Fax: (+49)-8142-66989-80 Email:
> lukma at denx.de


More information about the U-Boot mailing list