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
30 - description: XUSB device controller registers
31 - description: XUSB device PCI Config registers
32 - description: XUSB device registers.
44 description: Must contain the XUSB device interrupt.
50 - description: Clock to enable core XUSB dev clock.
51 - description: Clock to enable XUSB super speed clock.
52 - description: Clock to enable XUSB super speed dev clock.
53 - description: Clock to enable XUSB high speed dev clock.
54 - description: Clock to enable XUSB full speed dev clock.
68 - description: XUSBB(device) power-domain
69 - description: XUSBA(superspeed) power-domain
77 $ref: /schemas/types.yaml#/definitions/phandle-array
79 phandle to the XUSB pad controller that is used to configure the USB pads
80 used by the XUDC controller.
85 Must contain an entry for each entry in phy-names.
86 See ../phy/phy-bindings.txt for details.
101 description: PCIe/USB3 analog logic power supply. Must supply 1.05 V.
104 description: USB controller power supply. Must supply 3.3 V.
125 - nvidia,tegra210-xudc
145 - nvidia,tegra186-xudc
146 - nvidia,tegra194-xudc
158 additionalProperties: false
162 #include <dt-bindings/clock/tegra210-car.h>
163 #include <dt-bindings/gpio/tegra-gpio.h>
164 #include <dt-bindings/interrupt-controller/arm-gic.h>
167 compatible = "nvidia,tegra210-xudc";
168 reg = <0x700d0000 0x8000>,
171 reg-names = "base", "fpci", "ipfs";
173 interrupts = <GIC_SPI 44 IRQ_TYPE_LEVEL_HIGH>;
175 clocks = <&tegra_car TEGRA210_CLK_XUSB_DEV>,
176 <&tegra_car TEGRA210_CLK_XUSB_SS>,
177 <&tegra_car TEGRA210_CLK_XUSB_SSP_SRC>,
178 <&tegra_car TEGRA210_CLK_XUSB_FS_SRC>,
179 <&tegra_car TEGRA210_CLK_XUSB_HS_SRC>;
180 clock-names = "dev", "ss", "ss_src", "fs_src", "hs_src";
182 power-domains = <&pd_xusbdev>, <&pd_xusbss>;
183 power-domain-names = "dev", "ss";
185 nvidia,xusb-padctl = <&padctl>;
188 phy-names = "usb2-0";
190 avddio-usb-supply = <&vdd_pex_1v05>;
191 hvdd-usb-supply = <&vdd_3v3_sys>;