197351cd8SThierry Reding# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 297351cd8SThierry Reding%YAML 1.2 397351cd8SThierry Reding--- 497351cd8SThierry Reding$id: http://devicetree.org/schemas/usb/nvidia,tegra186-xusb.yaml# 597351cd8SThierry Reding$schema: http://devicetree.org/meta-schemas/core.yaml# 697351cd8SThierry Reding 797351cd8SThierry Redingtitle: NVIDIA Tegra186 xHCI controller 897351cd8SThierry Reding 997351cd8SThierry Redingmaintainers: 1097351cd8SThierry Reding - Thierry Reding <thierry.reding@gmail.com> 1197351cd8SThierry Reding - Jon Hunter <jonathanh@nvidia.com> 1297351cd8SThierry Reding 1397351cd8SThierry Redingdescription: The Tegra xHCI controller supports both USB2 and USB3 interfaces 1497351cd8SThierry Reding exposed by the Tegra XUSB pad controller. 1597351cd8SThierry Reding 1697351cd8SThierry Redingproperties: 1797351cd8SThierry Reding compatible: 1897351cd8SThierry Reding const: nvidia,tegra186-xusb 1997351cd8SThierry Reding 2097351cd8SThierry Reding reg: 2197351cd8SThierry Reding items: 2297351cd8SThierry Reding - description: base and length of the xHCI host registers 2397351cd8SThierry Reding - description: base and length of the XUSB FPCI registers 2497351cd8SThierry Reding 2597351cd8SThierry Reding reg-names: 2697351cd8SThierry Reding items: 2797351cd8SThierry Reding - const: hcd 2897351cd8SThierry Reding - const: fpci 2997351cd8SThierry Reding 3097351cd8SThierry Reding interrupts: 3197351cd8SThierry Reding items: 3297351cd8SThierry Reding - description: xHCI host interrupt 3397351cd8SThierry Reding - description: mailbox interrupt 3497351cd8SThierry Reding 3597351cd8SThierry Reding clocks: 3697351cd8SThierry Reding items: 3797351cd8SThierry Reding - description: XUSB host clock 3897351cd8SThierry Reding - description: XUSB Falcon source clock 3997351cd8SThierry Reding - description: XUSB SuperSpeed clock 4097351cd8SThierry Reding - description: XUSB SuperSpeed source clock 4197351cd8SThierry Reding - description: XUSB HighSpeed clock source 4297351cd8SThierry Reding - description: XUSB FullSpeed clock source 4397351cd8SThierry Reding - description: USB PLL 4497351cd8SThierry Reding - description: reference clock 4597351cd8SThierry Reding - description: I/O PLL 4697351cd8SThierry Reding 4797351cd8SThierry Reding clock-names: 4897351cd8SThierry Reding items: 4997351cd8SThierry Reding - const: xusb_host 5097351cd8SThierry Reding - const: xusb_falcon_src 5197351cd8SThierry Reding - const: xusb_ss 5297351cd8SThierry Reding - const: xusb_ss_src 5397351cd8SThierry Reding - const: xusb_hs_src 5497351cd8SThierry Reding - const: xusb_fs_src 5597351cd8SThierry Reding - const: pll_u_480m 5697351cd8SThierry Reding - const: clk_m 5797351cd8SThierry Reding - const: pll_e 5897351cd8SThierry Reding 5997351cd8SThierry Reding interconnects: 6097351cd8SThierry Reding items: 6197351cd8SThierry Reding - description: read client 6297351cd8SThierry Reding - description: write client 6397351cd8SThierry Reding 6497351cd8SThierry Reding interconnect-names: 6597351cd8SThierry Reding items: 6697351cd8SThierry Reding - const: dma-mem # read 6797351cd8SThierry Reding - const: write 6897351cd8SThierry Reding 6997351cd8SThierry Reding iommus: 7097351cd8SThierry Reding maxItems: 1 7197351cd8SThierry Reding 7297351cd8SThierry Reding nvidia,xusb-padctl: 7397351cd8SThierry Reding $ref: /schemas/types.yaml#/definitions/phandle 7497351cd8SThierry Reding description: phandle to the XUSB pad controller that is used to configure 7597351cd8SThierry Reding the USB pads used by the XHCI controller 7697351cd8SThierry Reding 7797351cd8SThierry Reding phys: 7897351cd8SThierry Reding minItems: 1 7997351cd8SThierry Reding maxItems: 7 8097351cd8SThierry Reding 8197351cd8SThierry Reding phy-names: 8297351cd8SThierry Reding minItems: 1 8397351cd8SThierry Reding maxItems: 7 8497351cd8SThierry Reding items: 8597351cd8SThierry Reding enum: 8697351cd8SThierry Reding - usb2-0 8797351cd8SThierry Reding - usb2-1 8897351cd8SThierry Reding - usb2-2 8997351cd8SThierry Reding - hsic-0 9097351cd8SThierry Reding - usb3-0 9197351cd8SThierry Reding - usb3-1 9297351cd8SThierry Reding - usb3-2 9397351cd8SThierry Reding 9497351cd8SThierry Reding power-domains: 9597351cd8SThierry Reding items: 9697351cd8SThierry Reding - description: XUSBC power domain (for Host and USB 2.0) 9797351cd8SThierry Reding - description: XUSBA power domain (for SuperSpeed) 9897351cd8SThierry Reding 9997351cd8SThierry Reding power-domain-names: 10097351cd8SThierry Reding items: 10197351cd8SThierry Reding - const: xusb_host 10297351cd8SThierry Reding - const: xusb_ss 10397351cd8SThierry Reding 10497351cd8SThierry Reding dvddio-pex-supply: 10597351cd8SThierry Reding description: PCIe/USB3 analog logic power supply. Must supply 1.05 V. 10697351cd8SThierry Reding 10797351cd8SThierry Reding hvddio-pex-supply: 10897351cd8SThierry Reding description: High-voltage PCIe/USB3 power supply. Must supply 1.8 V. 10997351cd8SThierry Reding 11097351cd8SThierry Reding avdd-usb-supply: 11197351cd8SThierry Reding description: USB controller power supply. Must supply 3.3 V. 11297351cd8SThierry Reding 11397351cd8SThierry Reding avdd-pll-utmip-supply: 11497351cd8SThierry Reding description: UTMI PLL power supply. Must supply 1.8 V. 11597351cd8SThierry Reding 11697351cd8SThierry Reding avdd-pll-uerefe-supply: 11797351cd8SThierry Reding description: PLLE reference PLL power supply. Must supply 1.05 V. 11897351cd8SThierry Reding 11997351cd8SThierry Reding dvdd-usb-ss-pll-supply: 12097351cd8SThierry Reding description: PCIe/USB3 PLL power supply. Must supply 1.05 V. 12197351cd8SThierry Reding 12297351cd8SThierry Reding hvdd-usb-ss-pll-e-supply: 12397351cd8SThierry Reding description: High-voltage PLLE power supply. Must supply 1.8 V. 12497351cd8SThierry Reding 12597351cd8SThierry RedingallOf: 12697351cd8SThierry Reding - $ref: usb-xhci.yaml 12797351cd8SThierry Reding 12897351cd8SThierry RedingunevaluatedProperties: false 12997351cd8SThierry Reding 13097351cd8SThierry Redingexamples: 13197351cd8SThierry Reding - | 13297351cd8SThierry Reding #include <dt-bindings/clock/tegra186-clock.h> 13397351cd8SThierry Reding #include <dt-bindings/interrupt-controller/arm-gic.h> 13497351cd8SThierry Reding #include <dt-bindings/memory/tegra186-mc.h> 13597351cd8SThierry Reding #include <dt-bindings/power/tegra186-powergate.h> 13697351cd8SThierry Reding #include <dt-bindings/reset/tegra186-reset.h> 13797351cd8SThierry Reding 13897351cd8SThierry Reding usb@3530000 { 13997351cd8SThierry Reding compatible = "nvidia,tegra186-xusb"; 14097351cd8SThierry Reding reg = <0x03530000 0x8000>, 14197351cd8SThierry Reding <0x03538000 0x1000>; 14297351cd8SThierry Reding reg-names = "hcd", "fpci"; 14397351cd8SThierry Reding interrupts = <GIC_SPI 163 IRQ_TYPE_LEVEL_HIGH>, 14497351cd8SThierry Reding <GIC_SPI 164 IRQ_TYPE_LEVEL_HIGH>; 14597351cd8SThierry Reding clocks = <&bpmp TEGRA186_CLK_XUSB_HOST>, 14697351cd8SThierry Reding <&bpmp TEGRA186_CLK_XUSB_FALCON>, 14797351cd8SThierry Reding <&bpmp TEGRA186_CLK_XUSB_SS>, 14897351cd8SThierry Reding <&bpmp TEGRA186_CLK_XUSB_CORE_SS>, 14997351cd8SThierry Reding <&bpmp TEGRA186_CLK_CLK_M>, 15097351cd8SThierry Reding <&bpmp TEGRA186_CLK_XUSB_FS>, 15197351cd8SThierry Reding <&bpmp TEGRA186_CLK_PLLU>, 15297351cd8SThierry Reding <&bpmp TEGRA186_CLK_CLK_M>, 15397351cd8SThierry Reding <&bpmp TEGRA186_CLK_PLLE>; 15497351cd8SThierry Reding clock-names = "xusb_host", "xusb_falcon_src", "xusb_ss", 15597351cd8SThierry Reding "xusb_ss_src", "xusb_hs_src", "xusb_fs_src", 15697351cd8SThierry Reding "pll_u_480m", "clk_m", "pll_e"; 15797351cd8SThierry Reding power-domains = <&bpmp TEGRA186_POWER_DOMAIN_XUSBC>, 15897351cd8SThierry Reding <&bpmp TEGRA186_POWER_DOMAIN_XUSBA>; 15997351cd8SThierry Reding power-domain-names = "xusb_host", "xusb_ss"; 16097351cd8SThierry Reding interconnects = <&mc TEGRA186_MEMORY_CLIENT_XUSB_HOSTR &emc>, 16197351cd8SThierry Reding <&mc TEGRA186_MEMORY_CLIENT_XUSB_HOSTW &emc>; 16297351cd8SThierry Reding interconnect-names = "dma-mem", "write"; 16397351cd8SThierry Reding iommus = <&smmu TEGRA186_SID_XUSB_HOST>; 16497351cd8SThierry Reding nvidia,xusb-padctl = <&padctl>; 16597351cd8SThierry Reding 16697351cd8SThierry Reding #address-cells = <1>; 16797351cd8SThierry Reding #size-cells = <0>; 16897351cd8SThierry Reding 169*d8a76e46SThierry Reding phys = <&phy_usb2_0>, <&phy_usb2_1>, <&phy_usb3_0>; 17097351cd8SThierry Reding phy-names = "usb2-0", "usb2-1", "usb3-0"; 17197351cd8SThierry Reding }; 172