RE: [PATCH] dt-bindings: usb: dwc3: Add snps,enable_guctl1_ipd_quirk

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



> -----Original Message-----
> From: Conor Dooley <conor@xxxxxxxxxx>
> Sent: Friday, February 16, 2024 1:09 AM
> To: Pandey, Radhey Shyam <radhey.shyam.pandey@xxxxxxx>
> Cc: gregkh@xxxxxxxxxxxxxxxxxxx; robh@xxxxxxxxxx;
> krzysztof.kozlowski+dt@xxxxxxxxxx; conor+dt@xxxxxxxxxx; balbi@xxxxxxxxxx;
> Thinh.Nguyen@xxxxxxxxxxxx; linux-usb@xxxxxxxxxxxxxxx;
> devicetree@xxxxxxxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx; git (AMD-Xilinx)
> <git@xxxxxxx>; Piyush Mehta <piyush.mehta@xxxxxxx>
> Subject: Re: [PATCH] dt-bindings: usb: dwc3: Add
> snps,enable_guctl1_ipd_quirk
> 
> On Fri, Feb 16, 2024 at 12:31:05AM +0530, Radhey Shyam Pandey wrote:
> > From: Piyush Mehta <piyush.mehta@xxxxxxx>
> >
> > SNPS controller when configured in HOST mode maintains Inter Packet
> > Delay (IPD) of ~380ns which works with most of the super-speed hubs
> > except VIA-LAB hubs. When IPD is ~380ns HOST controller fails to
> > enumerate FS/LS devices when connected behind VIA-LAB hubs.
> >
> > To address the above issue, add 'snps,enable_guctl1_ipd_quirk' quirk,
> > This quirk set the bit 9 of GUCTL1 that enables the workaround in HW
> > to reduce the ULPI clock latency by 1 cycle, thus reducing the IPD (~360ns).
> >
> > Signed-off-by: Piyush Mehta <piyush.mehta@xxxxxxx>
> > Signed-off-by: Radhey Shyam Pandey <radhey.shyam.pandey@xxxxxxx>
> > ---
> > In the zynqmp public database GUCTL1 bit 9 is reserved but it is used
> > to enable a fix related to Inter Packet Delay in HW. The documentation
> > team is working to update GUCTL1 bit 9 description.
> 
> Does this just affect the zynqmp?
> If it does, then you don't need a property - do this based on compatible.

Yes this only affect zynqmp. I will apply IPD quirk based on zynqmp compatible.
There is related discussion ongoing[1] on how to do it ? i.e in core or platform 
glue driver. Thinh suggested have it in platform code and I am working on it.
So will drop this binding patch.
[1]: https://lore.kernel.org/all/20240223230758.s7rodlxbsfa44frw@xxxxxxxxxxxx/
Thanks,
Radhey

> If it does affect other devices, what prevents the workaround being
> performed for all dwc3 controllers?
> 
> Cheers,
> Conor.
> 
> > ---
> >  Documentation/devicetree/bindings/usb/snps,dwc3.yaml | 7 +++++++
> >  1 file changed, 7 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
> > b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
> > index 8f5d250070c7..b226457a6e50 100644
> > --- a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
> > +++ b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
> > @@ -280,6 +280,13 @@ properties:
> >        xhci reset. And the vbus will back to 5V automatically when reset done.
> >      type: boolean
> >
> > +  snps,enable_guctl1_ipd_quirk:
> 
> No underscores in properties please.
> 
> > +    description:
> > +      When set, HW reduce the ULPI clock latency by 1 cycle, thus reducing
> > +      the IPD (~360ns) and making controller enumerate FS/LS devices
> > +      connected behind via-hubs.
> > +    type: boolean
> > +
> >    snps,is-utmi-l1-suspend:
> >      description:
> >        True when DWC3 asserts output signal utmi_l1_suspend_n, false
> > when
> > --
> > 2.34.1
> >





[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux