For Gen1 isoc-in endpoint on controller before about SSUSB IPM v1.6.0, it still send out unexpected ACK after receiving a short packet in burst transfer, this will cause an exception on connected device, specially for a 4k camera. Add a quirk property "mediatek,rxfifo-depth" to work around this hardware issue; The side-effect is that may cause performance drop about 10%, including bulk transfer. Signed-off-by: Chunfeng Yun <chunfeng.yun@xxxxxxxxxxxx> --- .../devicetree/bindings/usb/mediatek,mtk-xhci.yaml | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml b/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml index e9644e333d78..b8ed68574ba4 100644 --- a/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml +++ b/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml @@ -124,6 +124,16 @@ properties: defined in the xHCI spec on MTK's controller. default: 5000 + mediatek,rxfifo-depth: + description: + It is a quirk flag used to work around Gen1 isoc-in endpoint transfer + issue that still send out unexpected ACK after device finish the burst + transfer with a short packet and cause an exception, specially on a 4K + camera device, it happens on controller before about IPM v1.6.0; the + side-effect is that may cause performance drop about 10%, include bulk + transfer. + type: boolean + # the following properties are only used for case 1 wakeup-source: description: enable USB remote wakeup, see power/wakeup-source.txt -- 2.25.1