[PATCH V2 2/8] dt-bindings: usb: Add Tegra264 XUSB host support
Krzysztof Kozlowski
krzk at kernel.org
Tue Sep 1 03:10:26 PDT 2026
On Tue, Sep 01, 2026 at 02:58:29AM +0800, Wayne Chang wrote:
> Extend the Tegra234 XUSB host binding to cover Tegra264:
>
> - Add nvidia,tegra264-xusb compatible string
> - Document optional USB wake interrupts for Tegra264
> - Document Tegra264 PMC wake event to port mapping
> - Allow up to five IOMMU specifiers for the additional XUSB host
> stream IDs
>
> Signed-off-by: Wayne Chang <waynec at nvidia.com>
Why are USB patches mixed with DTS and phy ones? That's like three
separate subsystems, of which Greg explicitly said many, many times he
takes everything or nothing. Please read submitting patches in DT.
> ---
> V1 -> V2: Property definitions are back at the top level with the widest
> constraints, The allOf conditional only tightens Tegra234 to interrupts
> maxItems 9 and iommus maxItems 1.
>
> .../bindings/usb/nvidia,tegra234-xusb.yaml | 35 ++++++++++++++++---
> 1 file changed, 30 insertions(+), 5 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml b/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml
> index ec0993497fbb..d63f0db4224c 100644
> --- a/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml
> +++ b/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml
> @@ -17,7 +17,9 @@ description: |
>
> properties:
> compatible:
> - const: nvidia,tegra234-xusb
> + enum:
> + - nvidia,tegra234-xusb
> + - nvidia,tegra264-xusb
>
> reg:
> items:
> @@ -43,6 +45,7 @@ properties:
> - description: USB wake event 4
> - description: USB wake event 5
> - description: USB wake event 6
> + - description: USB wake event 7
> description: |
> The first two interrupts are required for the USB host controller. The
> remaining USB wake event interrupts are optional. Each USB wake event is
> @@ -50,10 +53,9 @@ properties:
> platform. The USB host controller can function even if no wake-up events
> are defined. The USB wake event interrupts are handled by the Tegra PMC;
> hence, the interrupt controller for these is the PMC and the interrupt
> - IDs correspond to the PMC wake event IDs. A complete list of wake event
> - IDs is provided below, and this information is also present in the Tegra
> - TRM document.
> + IDs correspond to the PMC wake event IDs.
>
> + Tegra234 PMC wake events:
> PMC wake-up 76 for USB3 port 0 wakeup
> PMC wake-up 77 for USB3 port 1 wakeup
> PMC wake-up 78 for USB3 port 2 and port 3 wakeup
> @@ -62,6 +64,16 @@ properties:
> PMC wake-up 81 for USB2 port 2 wakeup
> PMC wake-up 82 for USB2 port 3 wakeup
>
> + Tegra264 PMC wake events:
> + PMC wake-up 79 for USB3 port 0 wakeup
> + PMC wake-up 80 for USB3 port 1 wakeup
> + PMC wake-up 81 for USB3 port 2 wakeup
> + PMC wake-up 82 for USB3 port 3 wakeup
> + PMC wake-up 83 for USB2 port 0 wakeup
> + PMC wake-up 84 for USB2 port 1 wakeup
> + PMC wake-up 85 for USB2 port 2 wakeup
> + PMC wake-up 86 for USB2 port 3 wakeup
> +
> clocks:
> items:
> - description: XUSB host clock
> @@ -97,7 +109,8 @@ properties:
> - const: write
>
> iommus:
> - maxItems: 1
> + minItems: 1
> + maxItems: 5
You should list the items instead. Flexible array means now the order
have a meaning.
>
> nvidia,xusb-padctl:
> $ref: /schemas/types.yaml#/definitions/phandle
> @@ -137,6 +150,18 @@ properties:
> allOf:
> - $ref: usb-xhci.yaml
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + const: nvidia,tegra234-xusb
> + then:
> + properties:
> + interrupts:
> + maxItems: 9
> + iommus:
> + maxItems: 1
And the new device has flexible interrpts and iommus?
Best regards,
Krzysztof
More information about the linux-phy
mailing list