1 # SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
4 $id: "http://devicetree.org/schemas/usb/nvidia,tegra-xudc.yaml#"
5 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
7 title: Device tree binding for NVIDIA Tegra XUSB device mode controller (XUDC)
10 The Tegra XUDC controller supports both USB 2.0 HighSpeed/FullSpeed and
11 USB 3.0 SuperSpeed protocols.
14 - Nagarjuna Kristam <nkristam@nvidia.com>
15 - JC Kuo <jckuo@nvidia.com>
16 - Thierry Reding <treding@nvidia.com>
22 - nvidia,tegra210-xudc # For Tegra210
23 - nvidia,tegra186-xudc # For Tegra186
24 - nvidia,tegra194-xudc # For Tegra194
29 - description: XUSB device controller registers
30 - description: XUSB device PCI Config registers
31 - description: XUSB device registers.
42 description: Must contain the XUSB device interrupt.
47 - description: Clock to enable core XUSB dev clock.
48 - description: Clock to enable XUSB super speed clock.
49 - description: Clock to enable XUSB super speed dev clock.
50 - description: Clock to enable XUSB high speed dev clock.
51 - description: Clock to enable XUSB full speed dev clock.
64 - description: memory read client
65 - description: memory write client
69 - const: dma-mem # read
77 - description: XUSBB(device) power-domain
78 - description: XUSBA(superspeed) power-domain
86 $ref: /schemas/types.yaml#/definitions/phandle
88 phandle to the XUSB pad controller that is used to configure the USB pads
89 used by the XUDC controller.
94 Must contain an entry for each entry in phy-names.
95 See ../phy/phy-bindings.txt for details.
110 description: PCIe/USB3 analog logic power supply. Must supply 1.05 V.
113 description: USB controller power supply. Must supply 3.3 V.
134 - nvidia,tegra210-xudc
154 - nvidia,tegra186-xudc
155 - nvidia,tegra194-xudc
167 additionalProperties: false
171 #include <dt-bindings/clock/tegra210-car.h>
172 #include <dt-bindings/gpio/tegra-gpio.h>
173 #include <dt-bindings/interrupt-controller/arm-gic.h>
176 compatible = "nvidia,tegra210-xudc";
177 reg = <0x700d0000 0x8000>,
180 reg-names = "base", "fpci", "ipfs";
182 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
184 clocks = <&tegra_car TEGRA210_CLK_XUSB_DEV>,
185 <&tegra_car TEGRA210_CLK_XUSB_SS>,
186 <&tegra_car TEGRA210_CLK_XUSB_SSP_SRC>,
187 <&tegra_car TEGRA210_CLK_XUSB_FS_SRC>,
188 <&tegra_car TEGRA210_CLK_XUSB_HS_SRC>;
189 clock-names = "dev", "ss", "ss_src", "fs_src", "hs_src";
191 power-domains = <&pd_xusbdev>, <&pd_xusbss>;
192 power-domain-names = "dev", "ss";
194 nvidia,xusb-padctl = <&padctl>;
197 phy-names = "usb2-0";
199 avddio-usb-supply = <&vdd_pex_1v05>;
200 hvdd-usb-supply = <&vdd_3v3_sys>;