On Sun, 2016-10-30 at 12:27 +0200, Antti Seppälä wrote: > On 29 October 2016 at 18:31, Ben Mulvihill <ben.mulvih...@gmail.com> wrote: > > On Sat, 2016-10-29 at 13:28 +0200, Ben Mulvihill wrote: > >> On Fri, 2016-10-28 at 23:35 +0200, Ben Mulvihill wrote: > >> > On Fri, 2016-10-28 at 19:14 +0300, Antti Seppälä wrote: > >> > > On 28 October 2016 at 17:30, Ben Mulvihill <ben.mulvih...@gmail.com> > >> > > wrote: > >> > > > Add device tree binding for dwc2 usb driver on lantiq danube > >> > > > > >> > > > Signed-off-by: Ben Mulvihill <ben.mulvih...@gmail.com> > >> > > > --- > >> > > > diff -uprN a/target/linux/lantiq/dts/danube.dtsi > >> > > > b/target/linux/lantiq/dts/danube.dtsi > >> > > > --- a/target/linux/lantiq/dts/danube.dtsi 2016-10-27 > >> > > > 19:56:07.090392399 +0200 > >> > > > +++ b/target/linux/lantiq/dts/danube.dtsi 2016-10-27 > >> > > > 20:47:34.387511522 +0200 > >> > > > @@ -140,7 +140,7 @@ > >> > > > }; > >> > > > > >> > > > ifxhcd@E101000 { > >> > > > - compatible = "lantiq,ifxhcd-danube"; > >> > > > + compatible = "lantiq,ifxhcd-danube", > >> > > > "lantiq,ifxhcd-danube-dwc2"; > >> > > > reg = <0xE101000 0x1000 > >> > > > 0xE120000 0x3f000>; > >> > > > interrupt-parent = <&icu0>; > >> > > > > >> > > > > >> > > > >> > > Hi. > >> > > > >> > > Have you tried if danube can simply be compatible with vanilla > >> > > "snps,dwc2"? > >> > > > >> > > The main reason we created our own definition for lantiq is that arx > >> > > and xrx have fifo sizes smaller than what the dwc2 autodetection > >> > > mechanism expects. > >> > > I remember finding some references in ifxhcd code which would suggest > >> > > that danube had bigger fifo and thus would maybe work without any > >> > > special treatment. > >> > > > >> > > Br, > >> > > >> > I'm pretty sure I tried it, but must have been a couple of years > >> > ago and I can't remember why it didn't work. I'll have another go. > >> > > >> > Thanks for the suggestion, > >> > > >> > Ben > >> > >> You are right. It works fine with "snps,dwc2". (Apart from the same > >> mode mismatch warnings) When I tried that before I didn't have the > >> benefit of your hardware initialisation code and my own version > >> must have been wrong. > >> > >> I'll submit a version 2 patch set. > >> > >> Ben > > > > No, sorry. I was testing the wrong build. I'm afraid "snps,dwc2" doesn't > > work after all. It tries to autodetect the parameters, doesn't log any > > errors, but then doesn't recognise devices which are plugged in, > > so presumably the parameter values it thinks it has detected are > > not correct. > > > > What do you think would be the best thing to do, stick with my original > > patch set using the same parameters as for arx and vrx, which appear > > to work fine, or investigate the ifxhcd code and add a separate > > dwc2_core_params structure called params_danube with (possibly) bigger > > fifos? I'd prefer the former for simplicity's sake. > > > > Could you make another simple test where you temporarily edit the > params_ltq structure to have default values (-1) for all other fields > than the .otg_cap that is set to 2? The .otg_cap is used to disable > OTG power and session negotiation that seems to be required for some > boards. > > The fact that the driver doesn't complain anything about fifo > initialization suggests that the autodetection is working and reason > for non-working usb traffic could be elsewhere. However it is possible > that the autodetection logic is flawed and we need indeed to > initialize fifos with hard-coded values in which case values from > params_ltq are probably "good enough". >
Yes, setting -1 for all parameters apart from .otg_cap does works. Does that definitely not work on arx and vrx? You were right incidentally that the defaults for danube in ifxhcd are different from the other two. I found: danube (host mode): #define default_param_rx_fifo_size 640 #define default_param_nperio_tx_fifo_size 640 #define default_param_perio_tx_fifo_size 768 arx and vrx (host mode): #define default_param_rx_fifo_size 240 #define default_param_nperio_tx_fifo_size 240 #define default_param_perio_tx_fifo_size 32 Ben _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev