[PATCH 1/2] dt-bindings: usb/ti,am62-usb.yaml: Add ti,lane-reverse property

Richard Genoud posted 2 patches 1 day, 9 hours ago
[PATCH 1/2] dt-bindings: usb/ti,am62-usb.yaml: Add ti,lane-reverse property
Posted by Richard Genoud 1 day, 9 hours ago
On some designs, the D+ and D- lines are swapped (on purpose or not).
The PHY can handle that with the LANE_REVERSE bit.

Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
---
 Documentation/devicetree/bindings/usb/ti,am62-usb.yaml | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml b/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
index f6e6d084d1c5..ba894d610af0 100644
--- a/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
+++ b/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
@@ -36,6 +36,11 @@ properties:
     items:
       - const: ref
 
+  ti,lane-reverse:
+    description:
+      Should be present if D+ and D- lanes have to be swapped.
+    type: boolean
+
   ti,vbus-divider:
     description:
       Should be present if USB VBUS line is connected to the
Re: [PATCH 1/2] dt-bindings: usb/ti,am62-usb.yaml: Add ti,lane-reverse property
Posted by Krzysztof Kozlowski 18 hours ago
On Mon, Sep 08, 2025 at 06:20:51PM +0200, Richard Genoud wrote:
> On some designs, the D+ and D- lines are swapped (on purpose or not).
> The PHY can handle that with the LANE_REVERSE bit.
> 
> Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
> ---
>  Documentation/devicetree/bindings/usb/ti,am62-usb.yaml | 5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml b/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
> index f6e6d084d1c5..ba894d610af0 100644
> --- a/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
> +++ b/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
> @@ -36,6 +36,11 @@ properties:
>      items:
>        - const: ref
>  
> +  ti,lane-reverse:
> +    description:
> +      Should be present if D+ and D- lanes have to be swapped.
> +    type: boolean

What is not working with existing data-lanes property?

Plus, lanes are swapped per port, not for entire device, no?

Best regards,
Krzysztof
Re: [PATCH 1/2] dt-bindings: usb/ti,am62-usb.yaml: Add ti,lane-reverse property
Posted by Richard GENOUD 16 hours ago
Le 09/09/2025 à 09:32, Krzysztof Kozlowski a écrit :
> On Mon, Sep 08, 2025 at 06:20:51PM +0200, Richard Genoud wrote:
>> On some designs, the D+ and D- lines are swapped (on purpose or not).
>> The PHY can handle that with the LANE_REVERSE bit.
>>
>> Signed-off-by: Richard Genoud <richard.genoud@bootlin.com>
>> ---
>>   Documentation/devicetree/bindings/usb/ti,am62-usb.yaml | 5 +++++
>>   1 file changed, 5 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml b/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
>> index f6e6d084d1c5..ba894d610af0 100644
>> --- a/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
>> +++ b/Documentation/devicetree/bindings/usb/ti,am62-usb.yaml
>> @@ -36,6 +36,11 @@ properties:
>>       items:
>>         - const: ref
>>   
>> +  ti,lane-reverse:
>> +    description:
>> +      Should be present if D+ and D- lanes have to be swapped.
>> +    type: boolean
> 
> What is not working with existing data-lanes property?
Hum, indeed. data-lanes could definitely be used here.

> 
> Plus, lanes are swapped per port, not for entire device, no?
I'm not sure to get what you mean here.
The use case I'm trying to address is:
pin AD10(USB1_DM) of the AM625 is routed to USB_DP pin of an USB connector.
And pin AE9(USB1_DP) of the AM625 is routed to USB_DM pin of an USB 
connector.
And using LANE_REVERSE bit of MMR_USB2SS_CFG_PHY_CONFIG swaps the DM/DP 
lines of the corresponding USB instance.

Regards,
Richard

> 
> Best regards,
> Krzysztof
>