2023-11-18 05:56:02

by Prashanth K

[permalink] [raw]
Subject: [PATCH 0/2] Add support for xhci-sg-trb-cache-size-quirk

XHCI_SG_TRB_CACHE_SIZE_QUIRK was introduced in XHCI to resolve
XHC timeout while using SG buffers, which was seen Synopsys XHCs.
The support for this isn't present in DWC3 layer, this series
enables XHCI_SG_TRB_CACHE_SIZE_QUIRK since this is needed for
DWC3 controller.

Prashanth K (2):
usb: dwc3: core: Add support for xhci-sg-trb-cache-size-quirk
dt-bindings: usb: snps,dwc3: Add 'xhci-sg-trb-cache-size-quirk'

Documentation/devicetree/bindings/usb/snps,dwc3.yaml | 7 +++++++
drivers/usb/dwc3/core.c | 2 ++
drivers/usb/dwc3/core.h | 3 +++
drivers/usb/dwc3/host.c | 9 +++++++++
4 files changed, 21 insertions(+)

--
2.7.4


2023-11-18 05:56:16

by Prashanth K

[permalink] [raw]
Subject: [PATCH 2/2] dt-bindings: usb: snps,dwc3: Add 'xhci-sg-trb-cache-size-quirk'

Add a new 'xhci-sg-trb-cache-size-quirk' DT quirk to dwc3 core
for preventing xhci hang issue while using SG buffers.

Signed-off-by: Prashanth K <[email protected]>
---
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 ee5af4b..768fdb5 100644
--- a/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
+++ b/Documentation/devicetree/bindings/usb/snps,dwc3.yaml
@@ -459,6 +459,13 @@ properties:
description:
Enable USB remote wakeup.

+ xhci-sg-trb-cache-size-quirk:
+ description:
+ When set, fixes the SNPS xHC hang issue when the data is scattered across
+ small buffers which does not make at least MPS size for given controller
+ TRB cache size.
+ type: boolean
+
unevaluatedProperties: false

required:
--
2.7.4