From: Conor Dooley <conor@kernel.org>
To: Wayne Chang <waynec@nvidia.com>
Cc: mathias.nyman@intel.com, vkoul@kernel.org,
neil.armstrong@linaro.org, robh@kernel.org, krzk+dt@kernel.org,
conor+dt@kernel.org, gregkh@linuxfoundation.org,
thierry.reding@gmail.com, jonathanh@nvidia.com,
linux-usb@vger.kernel.org, linux-tegra@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-phy@lists.infradead.org,
devicetree@vger.kernel.org
Subject: Re: [PATCH 2/8] dt-bindings: usb: Add Tegra264 XUSB host support
Date: Mon, 29 Jun 2026 16:21:11 +0100 [thread overview]
Message-ID: <20260629-primal-refrain-1eb04745384f@spud> (raw)
In-Reply-To: <20260629093406.1118594-3-waynec@nvidia.com>
[-- Attachment #1: Type: text/plain, Size: 6856 bytes --]
On Mon, Jun 29, 2026 at 05:34:00PM +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@nvidia.com>
> ---
> .../bindings/usb/nvidia,tegra234-xusb.yaml | 115 ++++++++++++------
> 1 file changed, 80 insertions(+), 35 deletions(-)
>
> diff --git a/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml b/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml
> index ec0993497fbb..94b1dbe2b02f 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:
> @@ -31,37 +33,6 @@ properties:
> - const: fpci
> - const: bar2
>
> - interrupts:
> - minItems: 2
> - items:
> - - description: xHCI host interrupt
> - - description: mailbox interrupt
> - - description: USB wake event 0
> - - description: USB wake event 1
> - - description: USB wake event 2
> - - description: USB wake event 3
> - - description: USB wake event 4
> - - description: USB wake event 5
> - - description: USB wake event 6
> - 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
> - independent; it is not necessary to use all of these events on a
> - 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.
> -
> - 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
> - PMC wake-up 79 for USB2 port 0 wakeup
> - PMC wake-up 80 for USB2 port 1 wakeup
> - PMC wake-up 81 for USB2 port 2 wakeup
> - PMC wake-up 82 for USB2 port 3 wakeup
> -
Property definitions should remain at the top level, with the widest
constraints and list of entries.
Conditional sections should just apply restrictions. In this case, only
one additional clock seems to be the difference, so conditional
restrictions should suffice.
> clocks:
> items:
> - description: XUSB host clock
> @@ -96,9 +67,6 @@ properties:
> - const: dma-mem # read
> - const: write
>
> - iommus:
> - maxItems: 1
Same with this, conditionally forbid it on the new platform but leave
this here.
pw-bot: changes-requested
Thanks,
Conor.
> -
> nvidia,xusb-padctl:
> $ref: /schemas/types.yaml#/definitions/phandle
> description: phandle to the XUSB pad controller that is used to configure
> @@ -137,6 +105,83 @@ properties:
> allOf:
> - $ref: usb-xhci.yaml
>
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - nvidia,tegra234-xusb
> + then:
> + properties:
> + interrupts:
> + minItems: 2
> + 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 independent; it is not necessary to use all of these events
> + on a 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.
> +
> + 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
> + PMC wake-up 79 for USB2 port 0 wakeup
> + PMC wake-up 80 for USB2 port 1 wakeup
> + PMC wake-up 81 for USB2 port 2 wakeup
> + PMC wake-up 82 for USB2 port 3 wakeup
> + items:
> + - description: xHCI host interrupt
> + - description: mailbox interrupt
> + - description: USB wake event 0
> + - description: USB wake event 1
> + - description: USB wake event 2
> + - description: USB wake event 3
> + - description: USB wake event 4
> + - description: USB wake event 5
> + - description: USB wake event 6
> + iommus:
> + maxItems: 1
> +
> + - if:
> + properties:
> + compatible:
> + contains:
> + enum:
> + - nvidia,tegra264-xusb
> + then:
> + properties:
> + interrupts:
> + minItems: 2
> + description: |
> + Same as Tegra234, with one additional optional USB wake event
> + interrupt. USB3 port 2 and port 3 each have a dedicated wake event
> + interrupt on Tegra264.
> +
> + 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
> + items:
> + - description: xHCI host interrupt
> + - description: mailbox interrupt
> + - description: USB wake event 0
> + - description: USB wake event 1
> + - description: USB wake event 2
> + - description: USB wake event 3
> + - description: USB wake event 4
> + - description: USB wake event 5
> + - description: USB wake event 6
> + - description: USB wake event 7
> + iommus:
> + maxItems: 5
> +
> unevaluatedProperties: false
>
> examples:
> --
> 2.25.1
>
[-- Attachment #2: signature.asc --]
[-- Type: application/pgp-signature, Size: 228 bytes --]
next prev parent reply other threads:[~2026-06-29 15:21 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-29 9:33 [PATCH 0/8] Enable USB host functions on Jetson AGX Thor Wayne Chang
2026-06-29 9:33 ` [PATCH 1/8] dt-bindings: phy: tegra-xusb: Add support for Tegra264 Wayne Chang
2026-06-29 15:19 ` Conor Dooley
2026-06-29 9:34 ` [PATCH 2/8] dt-bindings: usb: Add Tegra264 XUSB host support Wayne Chang
2026-06-29 15:21 ` Conor Dooley [this message]
2026-06-29 9:34 ` [PATCH 3/8] arm64: tegra: Enable XUSB host function on Jetson AGX Thor Wayne Chang
2026-06-29 9:34 ` [PATCH 4/8] phy: tegra: xusb: Use devm_clk_get_optional to fetch USB2 tracking clock Wayne Chang
2026-06-29 9:34 ` [PATCH 5/8] phy: tegra: xusb: Increase timeout for USB2_TRK_COMPLETED polling Wayne Chang
2026-06-29 9:34 ` [PATCH 6/8] phy: tegra: xusb: Add Tegra264 support Wayne Chang
2026-06-29 9:34 ` [PATCH 7/8] usb: host: xhci-tegra: Skip MBOX MSG_ENABLED on Tegra264 Wayne Chang
2026-06-29 9:34 ` [PATCH 8/8] usb: host: xhci-tegra: Add Tegra264 XHCI support Wayne Chang
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260629-primal-refrain-1eb04745384f@spud \
--to=conor@kernel.org \
--cc=conor+dt@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=jonathanh@nvidia.com \
--cc=krzk+dt@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-phy@lists.infradead.org \
--cc=linux-tegra@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=mathias.nyman@intel.com \
--cc=neil.armstrong@linaro.org \
--cc=robh@kernel.org \
--cc=thierry.reding@gmail.com \
--cc=vkoul@kernel.org \
--cc=waynec@nvidia.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox