[PATCH v2 1/3] dt-bindings: usb: mtk-xhci: add a property for Gen1 isoc-in transfer issue

Krzysztof Kozlowski krzysztof.kozlowski at linaro.org
Tue Dec 19 23:25:16 PST 2023


On 20/12/2023 03:05, Chunfeng Yun (云春峰) wrote:
> On Fri, 2023-12-15 at 08:36 +0100, Krzysztof Kozlowski wrote:
>>  	 
>> External email : Please do not click links or open attachments until
>> you have verified the sender or the content.
>>  On 15/12/2023 08:34, Chunfeng Yun wrote:
>>> 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 "rx-fifo-depth" to work around this hardware
>> issue,
>>> prefer to use 2;
>>> The side-effect is that may cause performance drop about 10%,
>> including
>>> bulk transfer.
>>>
>>> Signed-off-by: Chunfeng Yun <chunfeng.yun at mediatek.com>
>>> ---
>>> v2: change 'mediatek,rxfifo-depth' to 'rx-fifo-depth'
>>> ---
>>>  .../devicetree/bindings/usb/mediatek,mtk-xhci.yaml   | 12
>> ++++++++++++
>>>  1 file changed, 12 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/usb/mediatek,mtk-
>> xhci.yaml b/Documentation/devicetree/bindings/usb/mediatek,mtk-
>> xhci.yaml
>>> index e9644e333d78..e44a71acb5c0 100644
>>> --- a/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml
>>> +++ b/Documentation/devicetree/bindings/usb/mediatek,mtk-xhci.yaml
>>> @@ -124,6 +124,18 @@ properties:
>>>        defined in the xHCI spec on MTK's controller.
>>>      default: 5000
>>>  
>>> +  rx-fifo-depth:
>>> +    $ref: /schemas/types.yaml#/definitions/uint32
>>> +    description:
>>> +      It is a quirk 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,
>>> +      prefer to use 2 here.
>>
>> What is the meaning of 0-3? bytes? words?
> 0 - 1K bytes;
> 3 - 4K bytes;
> I will add this in description

No, don't add. Just use correct values. 0 means 0 words or bytes. Not
1000 bytes.

Best regards,
Krzysztof




More information about the Linux-mediatek mailing list