[PATCH 1/4] dt-bindings: usb: Add wake-up support for Tegra234 XUSB host controller

Haotien Hsu posted 4 patches 2 months ago
There is a newer version of this series
[PATCH 1/4] dt-bindings: usb: Add wake-up support for Tegra234 XUSB host controller
Posted by Haotien Hsu 2 months ago
Populate USB wake events for Tegra234 XUSB host controller.
These wake-up events are optional to maintain backward compatibility and
because the USB controller does not require them for normal operation.

Signed-off-by: Haotien Hsu <haotienh@nvidia.com>
---
 .../bindings/usb/nvidia,tegra234-xusb.yaml    | 28 +++++++++++++++++--
 1 file changed, 26 insertions(+), 2 deletions(-)

diff --git a/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml b/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml
index db761dcbf72a..6365c6647cd7 100644
--- a/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml
+++ b/Documentation/devicetree/bindings/usb/nvidia,tegra234-xusb.yaml
@@ -32,9 +32,32 @@ properties:
       - 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
 
   clocks:
     items:
@@ -127,8 +150,9 @@ examples:
               <0x03650000 0x10000>;
         reg-names = "hcd", "fpci", "bar2";
 
-        interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
-                     <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>;
+        interrupts-extended = <&gic GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>,
+                              <&gic GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>,
+                              <&pmc 76 IRQ_TYPE_LEVEL_HIGH>;
 
         clocks = <&bpmp TEGRA234_CLK_XUSB_CORE_HOST>,
                  <&bpmp TEGRA234_CLK_XUSB_FALCON>,
-- 
2.34.1
Re: [PATCH 1/4] dt-bindings: usb: Add wake-up support for Tegra234 XUSB host controller
Posted by Conor Dooley 2 months ago
On Fri, Aug 01, 2025 at 05:57:45PM +0800, Haotien Hsu wrote:
> Populate USB wake events for Tegra234 XUSB host controller.
> These wake-up events are optional to maintain backward compatibility and
> because the USB controller does not require them for normal operation.
> 
> Signed-off-by: Haotien Hsu <haotienh@nvidia.com>

Acked-by: Conor Dooley <conor.dooley@microchip.com>