[U-Boot] [PATCH v2 1/3] usb: dwc2: correctly handle binding for g-tx-fifo-size

Patrick DELAUNAY patrick.delaunay at st.com
Wed Jun 19 14:50:56 UTC 2019


Hi Marek,

> From: Marek Vasut <marex at denx.de>
> Sent: mardi 18 juin 2019 18:46
> 
> On 6/18/19 4:57 PM, Patrick Delaunay wrote:
> > Manage g-tx-fifo-size as a array as specify in the binding.
> >
> > Signed-off-by: Patrick Delaunay <patrick.delaunay at st.com>
> 
> Reviewed-by: Marek Vasut <marex at denx.de>
> 
> I'm missing 2/3 , although I think it might be better if you take this whole series
> through u-boot-stm .

Ok thanks,

We (Patrice or me) we will take the serie on u-boot-stm.

> > ---
> >
> > Changes in v2:
> > - move dt update in a separate patch
> > - remove unecessary temporary variable
> >
> >  drivers/usb/gadget/dwc2_udc_otg.c | 14 +++++++++++++-
> >  1 file changed, 13 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/usb/gadget/dwc2_udc_otg.c
> > b/drivers/usb/gadget/dwc2_udc_otg.c
> > index 494ab53..023439c 100644
> > --- a/drivers/usb/gadget/dwc2_udc_otg.c
> > +++ b/drivers/usb/gadget/dwc2_udc_otg.c
> > @@ -1039,6 +1039,7 @@ static int dwc2_udc_otg_ofdata_to_platdata(struct
> udevice *dev)
> >  	int node = dev_of_offset(dev);
> >  	ulong drvdata;
> >  	void (*set_params)(struct dwc2_plat_otg_data *data);
> > +	int ret;
> >
> >  	if (usb_get_dr_mode(node) != USB_DR_MODE_PERIPHERAL) {
> >  		dev_dbg(dev, "Invalid mode\n");
> > @@ -1050,7 +1051,18 @@ static int dwc2_udc_otg_ofdata_to_platdata(struct
> udevice *dev)
> >  	platdata->rx_fifo_sz = dev_read_u32_default(dev, "g-rx-fifo-size", 0);
> >  	platdata->np_tx_fifo_sz = dev_read_u32_default(dev,
> >  						       "g-np-tx-fifo-size", 0);
> > -	platdata->tx_fifo_sz = dev_read_u32_default(dev, "g-tx-fifo-size", 0);
> > +
> > +	platdata->tx_fifo_sz_nb =
> > +		dev_read_size(dev, "g-tx-fifo-size") / sizeof(u32);
> > +	if (platdata->tx_fifo_sz_nb > DWC2_MAX_HW_ENDPOINTS)
> > +		platdata->tx_fifo_sz_nb = DWC2_MAX_HW_ENDPOINTS;
> > +	if (platdata->tx_fifo_sz_nb) {
> > +		ret = dev_read_u32_array(dev, "g-tx-fifo-size",
> > +					 platdata->tx_fifo_sz_array,
> > +					 platdata->tx_fifo_sz_nb);
> > +		if (ret)
> > +			return ret;
> > +	}
> >
> >  	platdata->force_b_session_valid =
> >  		dev_read_bool(dev, "u-boot,force-b-session-valid");
> >
> 
> 
> --
> Best regards,
> Marek Vasut


More information about the U-Boot mailing list