1ae5de77eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2ae5de77eSEmmanuel Vadot%YAML 1.2 3ae5de77eSEmmanuel Vadot--- 4ae5de77eSEmmanuel Vadot$id: http://devicetree.org/schemas/usb/qcom,snps-dwc3.yaml# 5ae5de77eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6ae5de77eSEmmanuel Vadot 7ae5de77eSEmmanuel Vadottitle: Qualcomm SuperSpeed DWC3 USB SoC controller 8ae5de77eSEmmanuel Vadot 9ae5de77eSEmmanuel Vadotmaintainers: 10ae5de77eSEmmanuel Vadot - Wesley Cheng <quic_wcheng@quicinc.com> 11ae5de77eSEmmanuel Vadot 12ae5de77eSEmmanuel Vadotdescription: 13ae5de77eSEmmanuel Vadot Describes the Qualcomm USB block, based on Synopsys DWC3. 14ae5de77eSEmmanuel Vadot 15ae5de77eSEmmanuel Vadotselect: 16ae5de77eSEmmanuel Vadot properties: 17ae5de77eSEmmanuel Vadot compatible: 18ae5de77eSEmmanuel Vadot contains: 19ae5de77eSEmmanuel Vadot const: qcom,snps-dwc3 20ae5de77eSEmmanuel Vadot required: 21ae5de77eSEmmanuel Vadot - compatible 22ae5de77eSEmmanuel Vadot 23ae5de77eSEmmanuel Vadotproperties: 24ae5de77eSEmmanuel Vadot compatible: 25ae5de77eSEmmanuel Vadot items: 26ae5de77eSEmmanuel Vadot - enum: 27ae5de77eSEmmanuel Vadot - qcom,ipq4019-dwc3 28ae5de77eSEmmanuel Vadot - qcom,ipq5018-dwc3 29ae5de77eSEmmanuel Vadot - qcom,ipq5332-dwc3 30ae5de77eSEmmanuel Vadot - qcom,ipq5424-dwc3 31ae5de77eSEmmanuel Vadot - qcom,ipq6018-dwc3 32ae5de77eSEmmanuel Vadot - qcom,ipq8064-dwc3 33ae5de77eSEmmanuel Vadot - qcom,ipq8074-dwc3 34ae5de77eSEmmanuel Vadot - qcom,ipq9574-dwc3 35*833e5d42SEmmanuel Vadot - qcom,milos-dwc3 36ae5de77eSEmmanuel Vadot - qcom,msm8953-dwc3 37ae5de77eSEmmanuel Vadot - qcom,msm8994-dwc3 38ae5de77eSEmmanuel Vadot - qcom,msm8996-dwc3 39ae5de77eSEmmanuel Vadot - qcom,msm8998-dwc3 40ae5de77eSEmmanuel Vadot - qcom,qcm2290-dwc3 41ae5de77eSEmmanuel Vadot - qcom,qcs404-dwc3 42ae5de77eSEmmanuel Vadot - qcom,qcs615-dwc3 43ae5de77eSEmmanuel Vadot - qcom,qcs8300-dwc3 44ae5de77eSEmmanuel Vadot - qcom,qdu1000-dwc3 45ae5de77eSEmmanuel Vadot - qcom,sa8775p-dwc3 46ae5de77eSEmmanuel Vadot - qcom,sar2130p-dwc3 47ae5de77eSEmmanuel Vadot - qcom,sc7180-dwc3 48ae5de77eSEmmanuel Vadot - qcom,sc7280-dwc3 49ae5de77eSEmmanuel Vadot - qcom,sc8180x-dwc3 50ae5de77eSEmmanuel Vadot - qcom,sc8180x-dwc3-mp 51ae5de77eSEmmanuel Vadot - qcom,sc8280xp-dwc3 52ae5de77eSEmmanuel Vadot - qcom,sc8280xp-dwc3-mp 53ae5de77eSEmmanuel Vadot - qcom,sdm660-dwc3 54ae5de77eSEmmanuel Vadot - qcom,sdm670-dwc3 55ae5de77eSEmmanuel Vadot - qcom,sdm845-dwc3 56ae5de77eSEmmanuel Vadot - qcom,sdx55-dwc3 57ae5de77eSEmmanuel Vadot - qcom,sdx65-dwc3 58ae5de77eSEmmanuel Vadot - qcom,sdx75-dwc3 59ae5de77eSEmmanuel Vadot - qcom,sm4250-dwc3 60ae5de77eSEmmanuel Vadot - qcom,sm6115-dwc3 61ae5de77eSEmmanuel Vadot - qcom,sm6125-dwc3 62ae5de77eSEmmanuel Vadot - qcom,sm6350-dwc3 63ae5de77eSEmmanuel Vadot - qcom,sm6375-dwc3 64ae5de77eSEmmanuel Vadot - qcom,sm8150-dwc3 65ae5de77eSEmmanuel Vadot - qcom,sm8250-dwc3 66ae5de77eSEmmanuel Vadot - qcom,sm8350-dwc3 67ae5de77eSEmmanuel Vadot - qcom,sm8450-dwc3 68ae5de77eSEmmanuel Vadot - qcom,sm8550-dwc3 69ae5de77eSEmmanuel Vadot - qcom,sm8650-dwc3 70ae5de77eSEmmanuel Vadot - qcom,x1e80100-dwc3 71ae5de77eSEmmanuel Vadot - const: qcom,snps-dwc3 72ae5de77eSEmmanuel Vadot 73ae5de77eSEmmanuel Vadot reg: 74ae5de77eSEmmanuel Vadot maxItems: 1 75ae5de77eSEmmanuel Vadot 76ae5de77eSEmmanuel Vadot power-domains: 77ae5de77eSEmmanuel Vadot maxItems: 1 78ae5de77eSEmmanuel Vadot 79ae5de77eSEmmanuel Vadot required-opps: 80ae5de77eSEmmanuel Vadot maxItems: 1 81ae5de77eSEmmanuel Vadot 82ae5de77eSEmmanuel Vadot clocks: 83ae5de77eSEmmanuel Vadot description: | 84ae5de77eSEmmanuel Vadot Several clocks are used, depending on the variant. Typical ones are:: 85ae5de77eSEmmanuel Vadot - cfg_noc:: System Config NOC clock. 86ae5de77eSEmmanuel Vadot - core:: Master/Core clock, has to be >= 125 MHz for SS operation and >= 87ae5de77eSEmmanuel Vadot 60MHz for HS operation. 88ae5de77eSEmmanuel Vadot - iface:: System bus AXI clock. 89ae5de77eSEmmanuel Vadot - sleep:: Sleep clock, used for wakeup when USB3 core goes into low 90ae5de77eSEmmanuel Vadot power mode (U3). 91ae5de77eSEmmanuel Vadot - mock_utmi:: Mock utmi clock needed for ITP/SOF generation in host 92ae5de77eSEmmanuel Vadot mode. Its frequency should be 19.2MHz. 93ae5de77eSEmmanuel Vadot minItems: 1 94ae5de77eSEmmanuel Vadot maxItems: 9 95ae5de77eSEmmanuel Vadot 96ae5de77eSEmmanuel Vadot clock-names: 97ae5de77eSEmmanuel Vadot minItems: 1 98ae5de77eSEmmanuel Vadot maxItems: 9 99ae5de77eSEmmanuel Vadot 100ae5de77eSEmmanuel Vadot dma-coherent: true 101ae5de77eSEmmanuel Vadot 102ae5de77eSEmmanuel Vadot iommus: 103ae5de77eSEmmanuel Vadot maxItems: 1 104ae5de77eSEmmanuel Vadot 105ae5de77eSEmmanuel Vadot resets: 106ae5de77eSEmmanuel Vadot maxItems: 1 107ae5de77eSEmmanuel Vadot 108ae5de77eSEmmanuel Vadot interconnects: 109ae5de77eSEmmanuel Vadot maxItems: 2 110ae5de77eSEmmanuel Vadot 111ae5de77eSEmmanuel Vadot interconnect-names: 112ae5de77eSEmmanuel Vadot items: 113ae5de77eSEmmanuel Vadot - const: usb-ddr 114ae5de77eSEmmanuel Vadot - const: apps-usb 115ae5de77eSEmmanuel Vadot 116ae5de77eSEmmanuel Vadot interrupts: 117ae5de77eSEmmanuel Vadot description: | 118ae5de77eSEmmanuel Vadot Different types of interrupts are used based on HS PHY used on target: 119ae5de77eSEmmanuel Vadot - dwc_usb3: Core DWC3 interrupt 120ae5de77eSEmmanuel Vadot - pwr_event: Used for wakeup based on other power events. 121ae5de77eSEmmanuel Vadot - hs_phy_irq: Apart from DP/DM/QUSB2 PHY interrupts, there is 122ae5de77eSEmmanuel Vadot hs_phy_irq which is not triggered by default and its 123ae5de77eSEmmanuel Vadot functionality is mutually exclusive to that of 124ae5de77eSEmmanuel Vadot {dp/dm}_hs_phy_irq and qusb2_phy_irq. 125ae5de77eSEmmanuel Vadot - qusb2_phy: SoCs with QUSB2 PHY do not have separate DP/DM IRQs and 126ae5de77eSEmmanuel Vadot expose only a single IRQ whose behavior can be modified 127ae5de77eSEmmanuel Vadot by the QUSB2PHY_INTR_CTRL register. The required DPSE/ 128ae5de77eSEmmanuel Vadot DMSE configuration is done in QUSB2PHY_INTR_CTRL register 129ae5de77eSEmmanuel Vadot of PHY address space. 130ae5de77eSEmmanuel Vadot - {dp/dm}_hs_phy_irq: These IRQ's directly reflect changes on the DP/ 131ae5de77eSEmmanuel Vadot DM pads of the SoC. These are used for wakeup 132ae5de77eSEmmanuel Vadot only on SoCs with non-QUSB2 targets with 133ae5de77eSEmmanuel Vadot exception of SDM670/SDM845/SM6350. 134ae5de77eSEmmanuel Vadot - ss_phy_irq: Used for remote wakeup in Super Speed mode of operation. 135ae5de77eSEmmanuel Vadot minItems: 3 136ae5de77eSEmmanuel Vadot maxItems: 19 137ae5de77eSEmmanuel Vadot 138ae5de77eSEmmanuel Vadot interrupt-names: 139ae5de77eSEmmanuel Vadot minItems: 3 140ae5de77eSEmmanuel Vadot maxItems: 19 141ae5de77eSEmmanuel Vadot 142ae5de77eSEmmanuel Vadot qcom,select-utmi-as-pipe-clk: 143ae5de77eSEmmanuel Vadot description: 144ae5de77eSEmmanuel Vadot If present, disable USB3 pipe_clk requirement. 145ae5de77eSEmmanuel Vadot Used when dwc3 operates without SSPHY and only 146ae5de77eSEmmanuel Vadot HS/FS/LS modes are supported. 147ae5de77eSEmmanuel Vadot type: boolean 148ae5de77eSEmmanuel Vadot 149ae5de77eSEmmanuel Vadot wakeup-source: true 150ae5de77eSEmmanuel Vadot 151ae5de77eSEmmanuel Vadot# Required child node: 152ae5de77eSEmmanuel Vadot 153ae5de77eSEmmanuel Vadotrequired: 154ae5de77eSEmmanuel Vadot - compatible 155ae5de77eSEmmanuel Vadot - reg 156ae5de77eSEmmanuel Vadot - clocks 157ae5de77eSEmmanuel Vadot - clock-names 158ae5de77eSEmmanuel Vadot - interrupts 159ae5de77eSEmmanuel Vadot - interrupt-names 160ae5de77eSEmmanuel Vadot 161ae5de77eSEmmanuel VadotallOf: 162ae5de77eSEmmanuel Vadot - $ref: snps,dwc3-common.yaml# 163ae5de77eSEmmanuel Vadot - if: 164ae5de77eSEmmanuel Vadot properties: 165ae5de77eSEmmanuel Vadot compatible: 166ae5de77eSEmmanuel Vadot contains: 167ae5de77eSEmmanuel Vadot enum: 168ae5de77eSEmmanuel Vadot - qcom,ipq4019-dwc3 169ae5de77eSEmmanuel Vadot - qcom,ipq5332-dwc3 170ae5de77eSEmmanuel Vadot then: 171ae5de77eSEmmanuel Vadot properties: 172ae5de77eSEmmanuel Vadot clocks: 173ae5de77eSEmmanuel Vadot maxItems: 3 174ae5de77eSEmmanuel Vadot clock-names: 175ae5de77eSEmmanuel Vadot items: 176ae5de77eSEmmanuel Vadot - const: core 177ae5de77eSEmmanuel Vadot - const: sleep 178ae5de77eSEmmanuel Vadot - const: mock_utmi 179ae5de77eSEmmanuel Vadot 180ae5de77eSEmmanuel Vadot - if: 181ae5de77eSEmmanuel Vadot properties: 182ae5de77eSEmmanuel Vadot compatible: 183ae5de77eSEmmanuel Vadot contains: 184ae5de77eSEmmanuel Vadot enum: 185ae5de77eSEmmanuel Vadot - qcom,ipq8064-dwc3 186ae5de77eSEmmanuel Vadot then: 187ae5de77eSEmmanuel Vadot properties: 188ae5de77eSEmmanuel Vadot clocks: 189ae5de77eSEmmanuel Vadot items: 190ae5de77eSEmmanuel Vadot - description: Master/Core clock, has to be >= 125 MHz 191ae5de77eSEmmanuel Vadot for SS operation and >= 60MHz for HS operation. 192ae5de77eSEmmanuel Vadot clock-names: 193ae5de77eSEmmanuel Vadot items: 194ae5de77eSEmmanuel Vadot - const: core 195ae5de77eSEmmanuel Vadot 196ae5de77eSEmmanuel Vadot - if: 197ae5de77eSEmmanuel Vadot properties: 198ae5de77eSEmmanuel Vadot compatible: 199ae5de77eSEmmanuel Vadot contains: 200ae5de77eSEmmanuel Vadot enum: 201ae5de77eSEmmanuel Vadot - qcom,ipq9574-dwc3 202ae5de77eSEmmanuel Vadot - qcom,msm8953-dwc3 203ae5de77eSEmmanuel Vadot - qcom,msm8996-dwc3 204ae5de77eSEmmanuel Vadot - qcom,msm8998-dwc3 205ae5de77eSEmmanuel Vadot - qcom,qcs8300-dwc3 206ae5de77eSEmmanuel Vadot - qcom,sa8775p-dwc3 207ae5de77eSEmmanuel Vadot - qcom,sc7180-dwc3 208ae5de77eSEmmanuel Vadot - qcom,sc7280-dwc3 209ae5de77eSEmmanuel Vadot - qcom,sdm670-dwc3 210ae5de77eSEmmanuel Vadot - qcom,sdm845-dwc3 211ae5de77eSEmmanuel Vadot - qcom,sdx55-dwc3 212ae5de77eSEmmanuel Vadot - qcom,sdx65-dwc3 213ae5de77eSEmmanuel Vadot - qcom,sdx75-dwc3 214ae5de77eSEmmanuel Vadot - qcom,sm6350-dwc3 215ae5de77eSEmmanuel Vadot then: 216ae5de77eSEmmanuel Vadot properties: 217ae5de77eSEmmanuel Vadot clocks: 218ae5de77eSEmmanuel Vadot maxItems: 5 219ae5de77eSEmmanuel Vadot clock-names: 220ae5de77eSEmmanuel Vadot items: 221ae5de77eSEmmanuel Vadot - const: cfg_noc 222ae5de77eSEmmanuel Vadot - const: core 223ae5de77eSEmmanuel Vadot - const: iface 224ae5de77eSEmmanuel Vadot - const: sleep 225ae5de77eSEmmanuel Vadot - const: mock_utmi 226ae5de77eSEmmanuel Vadot 227ae5de77eSEmmanuel Vadot - if: 228ae5de77eSEmmanuel Vadot properties: 229ae5de77eSEmmanuel Vadot compatible: 230ae5de77eSEmmanuel Vadot contains: 231ae5de77eSEmmanuel Vadot enum: 232ae5de77eSEmmanuel Vadot - qcom,ipq6018-dwc3 233ae5de77eSEmmanuel Vadot then: 234ae5de77eSEmmanuel Vadot properties: 235ae5de77eSEmmanuel Vadot clocks: 236ae5de77eSEmmanuel Vadot minItems: 3 237ae5de77eSEmmanuel Vadot maxItems: 4 238ae5de77eSEmmanuel Vadot clock-names: 239ae5de77eSEmmanuel Vadot oneOf: 240ae5de77eSEmmanuel Vadot - items: 241ae5de77eSEmmanuel Vadot - const: core 242ae5de77eSEmmanuel Vadot - const: sleep 243ae5de77eSEmmanuel Vadot - const: mock_utmi 244ae5de77eSEmmanuel Vadot - items: 245ae5de77eSEmmanuel Vadot - const: cfg_noc 246ae5de77eSEmmanuel Vadot - const: core 247ae5de77eSEmmanuel Vadot - const: sleep 248ae5de77eSEmmanuel Vadot - const: mock_utmi 249ae5de77eSEmmanuel Vadot 250ae5de77eSEmmanuel Vadot - if: 251ae5de77eSEmmanuel Vadot properties: 252ae5de77eSEmmanuel Vadot compatible: 253ae5de77eSEmmanuel Vadot contains: 254ae5de77eSEmmanuel Vadot enum: 255ae5de77eSEmmanuel Vadot - qcom,ipq8074-dwc3 256ae5de77eSEmmanuel Vadot - qcom,qdu1000-dwc3 257ae5de77eSEmmanuel Vadot then: 258ae5de77eSEmmanuel Vadot properties: 259ae5de77eSEmmanuel Vadot clocks: 260ae5de77eSEmmanuel Vadot maxItems: 4 261ae5de77eSEmmanuel Vadot clock-names: 262ae5de77eSEmmanuel Vadot items: 263ae5de77eSEmmanuel Vadot - const: cfg_noc 264ae5de77eSEmmanuel Vadot - const: core 265ae5de77eSEmmanuel Vadot - const: sleep 266ae5de77eSEmmanuel Vadot - const: mock_utmi 267ae5de77eSEmmanuel Vadot 268ae5de77eSEmmanuel Vadot - if: 269ae5de77eSEmmanuel Vadot properties: 270ae5de77eSEmmanuel Vadot compatible: 271ae5de77eSEmmanuel Vadot contains: 272ae5de77eSEmmanuel Vadot enum: 273ae5de77eSEmmanuel Vadot - qcom,ipq5018-dwc3 274ae5de77eSEmmanuel Vadot - qcom,msm8994-dwc3 275ae5de77eSEmmanuel Vadot - qcom,qcs404-dwc3 276ae5de77eSEmmanuel Vadot then: 277ae5de77eSEmmanuel Vadot properties: 278ae5de77eSEmmanuel Vadot clocks: 279ae5de77eSEmmanuel Vadot maxItems: 4 280ae5de77eSEmmanuel Vadot clock-names: 281ae5de77eSEmmanuel Vadot items: 282ae5de77eSEmmanuel Vadot - const: core 283ae5de77eSEmmanuel Vadot - const: iface 284ae5de77eSEmmanuel Vadot - const: sleep 285ae5de77eSEmmanuel Vadot - const: mock_utmi 286ae5de77eSEmmanuel Vadot 287ae5de77eSEmmanuel Vadot - if: 288ae5de77eSEmmanuel Vadot properties: 289ae5de77eSEmmanuel Vadot compatible: 290ae5de77eSEmmanuel Vadot contains: 291ae5de77eSEmmanuel Vadot enum: 292ae5de77eSEmmanuel Vadot - qcom,sc8280xp-dwc3 293ae5de77eSEmmanuel Vadot - qcom,sc8280xp-dwc3-mp 294ae5de77eSEmmanuel Vadot - qcom,x1e80100-dwc3 295ae5de77eSEmmanuel Vadot - qcom,x1e80100-dwc3-mp 296ae5de77eSEmmanuel Vadot then: 297ae5de77eSEmmanuel Vadot properties: 298ae5de77eSEmmanuel Vadot clocks: 299ae5de77eSEmmanuel Vadot maxItems: 9 300ae5de77eSEmmanuel Vadot clock-names: 301ae5de77eSEmmanuel Vadot items: 302ae5de77eSEmmanuel Vadot - const: cfg_noc 303ae5de77eSEmmanuel Vadot - const: core 304ae5de77eSEmmanuel Vadot - const: iface 305ae5de77eSEmmanuel Vadot - const: sleep 306ae5de77eSEmmanuel Vadot - const: mock_utmi 307ae5de77eSEmmanuel Vadot - const: noc_aggr 308ae5de77eSEmmanuel Vadot - const: noc_aggr_north 309ae5de77eSEmmanuel Vadot - const: noc_aggr_south 310ae5de77eSEmmanuel Vadot - const: noc_sys 311ae5de77eSEmmanuel Vadot 312ae5de77eSEmmanuel Vadot - if: 313ae5de77eSEmmanuel Vadot properties: 314ae5de77eSEmmanuel Vadot compatible: 315ae5de77eSEmmanuel Vadot contains: 316ae5de77eSEmmanuel Vadot enum: 317ae5de77eSEmmanuel Vadot - qcom,sdm660-dwc3 318ae5de77eSEmmanuel Vadot then: 319ae5de77eSEmmanuel Vadot properties: 320ae5de77eSEmmanuel Vadot clocks: 321ae5de77eSEmmanuel Vadot minItems: 4 322ae5de77eSEmmanuel Vadot maxItems: 5 323ae5de77eSEmmanuel Vadot clock-names: 324ae5de77eSEmmanuel Vadot oneOf: 325ae5de77eSEmmanuel Vadot - items: 326ae5de77eSEmmanuel Vadot - const: cfg_noc 327ae5de77eSEmmanuel Vadot - const: core 328ae5de77eSEmmanuel Vadot - const: iface 329ae5de77eSEmmanuel Vadot - const: sleep 330ae5de77eSEmmanuel Vadot - const: mock_utmi 331ae5de77eSEmmanuel Vadot - items: 332ae5de77eSEmmanuel Vadot - const: cfg_noc 333ae5de77eSEmmanuel Vadot - const: core 334ae5de77eSEmmanuel Vadot - const: sleep 335ae5de77eSEmmanuel Vadot - const: mock_utmi 336ae5de77eSEmmanuel Vadot 337ae5de77eSEmmanuel Vadot - if: 338ae5de77eSEmmanuel Vadot properties: 339ae5de77eSEmmanuel Vadot compatible: 340ae5de77eSEmmanuel Vadot contains: 341ae5de77eSEmmanuel Vadot enum: 342*833e5d42SEmmanuel Vadot - qcom,milos-dwc3 343ae5de77eSEmmanuel Vadot - qcom,qcm2290-dwc3 344ae5de77eSEmmanuel Vadot - qcom,qcs615-dwc3 345ae5de77eSEmmanuel Vadot - qcom,sar2130p-dwc3 346ae5de77eSEmmanuel Vadot - qcom,sc8180x-dwc3 347ae5de77eSEmmanuel Vadot - qcom,sc8180x-dwc3-mp 348ae5de77eSEmmanuel Vadot - qcom,sm6115-dwc3 349ae5de77eSEmmanuel Vadot - qcom,sm6125-dwc3 350ae5de77eSEmmanuel Vadot - qcom,sm8150-dwc3 351ae5de77eSEmmanuel Vadot - qcom,sm8250-dwc3 352ae5de77eSEmmanuel Vadot - qcom,sm8450-dwc3 353ae5de77eSEmmanuel Vadot - qcom,sm8550-dwc3 354ae5de77eSEmmanuel Vadot - qcom,sm8650-dwc3 355ae5de77eSEmmanuel Vadot then: 356ae5de77eSEmmanuel Vadot properties: 357ae5de77eSEmmanuel Vadot clocks: 358ae5de77eSEmmanuel Vadot minItems: 6 359ae5de77eSEmmanuel Vadot clock-names: 360ae5de77eSEmmanuel Vadot items: 361ae5de77eSEmmanuel Vadot - const: cfg_noc 362ae5de77eSEmmanuel Vadot - const: core 363ae5de77eSEmmanuel Vadot - const: iface 364ae5de77eSEmmanuel Vadot - const: sleep 365ae5de77eSEmmanuel Vadot - const: mock_utmi 366ae5de77eSEmmanuel Vadot - const: xo 367ae5de77eSEmmanuel Vadot 368ae5de77eSEmmanuel Vadot - if: 369ae5de77eSEmmanuel Vadot properties: 370ae5de77eSEmmanuel Vadot compatible: 371ae5de77eSEmmanuel Vadot contains: 372ae5de77eSEmmanuel Vadot enum: 373ae5de77eSEmmanuel Vadot - qcom,sm8350-dwc3 374ae5de77eSEmmanuel Vadot then: 375ae5de77eSEmmanuel Vadot properties: 376ae5de77eSEmmanuel Vadot clocks: 377ae5de77eSEmmanuel Vadot minItems: 5 378ae5de77eSEmmanuel Vadot maxItems: 6 379ae5de77eSEmmanuel Vadot clock-names: 380ae5de77eSEmmanuel Vadot minItems: 5 381ae5de77eSEmmanuel Vadot items: 382ae5de77eSEmmanuel Vadot - const: cfg_noc 383ae5de77eSEmmanuel Vadot - const: core 384ae5de77eSEmmanuel Vadot - const: iface 385ae5de77eSEmmanuel Vadot - const: sleep 386ae5de77eSEmmanuel Vadot - const: mock_utmi 387ae5de77eSEmmanuel Vadot - const: xo 388ae5de77eSEmmanuel Vadot 389ae5de77eSEmmanuel Vadot - if: 390ae5de77eSEmmanuel Vadot properties: 391ae5de77eSEmmanuel Vadot compatible: 392ae5de77eSEmmanuel Vadot contains: 393ae5de77eSEmmanuel Vadot enum: 394ae5de77eSEmmanuel Vadot - qcom,ipq5018-dwc3 395ae5de77eSEmmanuel Vadot - qcom,ipq6018-dwc3 396ae5de77eSEmmanuel Vadot - qcom,ipq8074-dwc3 397ae5de77eSEmmanuel Vadot - qcom,msm8953-dwc3 398ae5de77eSEmmanuel Vadot - qcom,msm8998-dwc3 399ae5de77eSEmmanuel Vadot then: 400ae5de77eSEmmanuel Vadot properties: 401ae5de77eSEmmanuel Vadot interrupts: 402ae5de77eSEmmanuel Vadot minItems: 3 403ae5de77eSEmmanuel Vadot maxItems: 4 404ae5de77eSEmmanuel Vadot interrupt-names: 405ae5de77eSEmmanuel Vadot minItems: 3 406ae5de77eSEmmanuel Vadot items: 407ae5de77eSEmmanuel Vadot - const: dwc_usb3 408ae5de77eSEmmanuel Vadot - const: pwr_event 409ae5de77eSEmmanuel Vadot - const: qusb2_phy 410ae5de77eSEmmanuel Vadot - const: ss_phy_irq 411ae5de77eSEmmanuel Vadot 412ae5de77eSEmmanuel Vadot - if: 413ae5de77eSEmmanuel Vadot properties: 414ae5de77eSEmmanuel Vadot compatible: 415ae5de77eSEmmanuel Vadot contains: 416ae5de77eSEmmanuel Vadot enum: 417ae5de77eSEmmanuel Vadot - qcom,msm8996-dwc3 418ae5de77eSEmmanuel Vadot - qcom,qcs404-dwc3 419ae5de77eSEmmanuel Vadot - qcom,sdm660-dwc3 420ae5de77eSEmmanuel Vadot - qcom,sm6115-dwc3 421ae5de77eSEmmanuel Vadot - qcom,sm6125-dwc3 422ae5de77eSEmmanuel Vadot then: 423ae5de77eSEmmanuel Vadot properties: 424ae5de77eSEmmanuel Vadot interrupts: 425ae5de77eSEmmanuel Vadot minItems: 4 426ae5de77eSEmmanuel Vadot maxItems: 5 427ae5de77eSEmmanuel Vadot interrupt-names: 428ae5de77eSEmmanuel Vadot minItems: 4 429ae5de77eSEmmanuel Vadot items: 430ae5de77eSEmmanuel Vadot - const: dwc_usb3 431ae5de77eSEmmanuel Vadot - const: pwr_event 432ae5de77eSEmmanuel Vadot - const: qusb2_phy 433ae5de77eSEmmanuel Vadot - const: hs_phy_irq 434ae5de77eSEmmanuel Vadot - const: ss_phy_irq 435ae5de77eSEmmanuel Vadot 436ae5de77eSEmmanuel Vadot - if: 437ae5de77eSEmmanuel Vadot properties: 438ae5de77eSEmmanuel Vadot compatible: 439ae5de77eSEmmanuel Vadot contains: 440ae5de77eSEmmanuel Vadot enum: 441ae5de77eSEmmanuel Vadot - qcom,ipq5332-dwc3 442ae5de77eSEmmanuel Vadot then: 443ae5de77eSEmmanuel Vadot properties: 444ae5de77eSEmmanuel Vadot interrupts: 445ae5de77eSEmmanuel Vadot maxItems: 4 446ae5de77eSEmmanuel Vadot interrupt-names: 447ae5de77eSEmmanuel Vadot items: 448ae5de77eSEmmanuel Vadot - const: dwc_usb3 449ae5de77eSEmmanuel Vadot - const: pwr_event 450ae5de77eSEmmanuel Vadot - const: dp_hs_phy_irq 451ae5de77eSEmmanuel Vadot - const: dm_hs_phy_irq 452ae5de77eSEmmanuel Vadot 453ae5de77eSEmmanuel Vadot - if: 454ae5de77eSEmmanuel Vadot properties: 455ae5de77eSEmmanuel Vadot compatible: 456ae5de77eSEmmanuel Vadot contains: 457ae5de77eSEmmanuel Vadot enum: 458*833e5d42SEmmanuel Vadot - qcom,milos-dwc3 459ae5de77eSEmmanuel Vadot - qcom,x1e80100-dwc3 460ae5de77eSEmmanuel Vadot then: 461ae5de77eSEmmanuel Vadot properties: 462ae5de77eSEmmanuel Vadot interrupts: 463ae5de77eSEmmanuel Vadot maxItems: 5 464ae5de77eSEmmanuel Vadot interrupt-names: 465ae5de77eSEmmanuel Vadot items: 466ae5de77eSEmmanuel Vadot - const: dwc_usb3 467ae5de77eSEmmanuel Vadot - const: pwr_event 468ae5de77eSEmmanuel Vadot - const: dp_hs_phy_irq 469ae5de77eSEmmanuel Vadot - const: dm_hs_phy_irq 470ae5de77eSEmmanuel Vadot - const: ss_phy_irq 471ae5de77eSEmmanuel Vadot 472ae5de77eSEmmanuel Vadot - if: 473ae5de77eSEmmanuel Vadot properties: 474ae5de77eSEmmanuel Vadot compatible: 475ae5de77eSEmmanuel Vadot contains: 476ae5de77eSEmmanuel Vadot enum: 477ae5de77eSEmmanuel Vadot - qcom,ipq4019-dwc3 478ae5de77eSEmmanuel Vadot - qcom,ipq8064-dwc3 479ae5de77eSEmmanuel Vadot - qcom,msm8994-dwc3 480ae5de77eSEmmanuel Vadot - qcom,qcs615-dwc3 481ae5de77eSEmmanuel Vadot - qcom,qcs8300-dwc3 482ae5de77eSEmmanuel Vadot - qcom,qdu1000-dwc3 483ae5de77eSEmmanuel Vadot - qcom,sa8775p-dwc3 484ae5de77eSEmmanuel Vadot - qcom,sc7180-dwc3 485ae5de77eSEmmanuel Vadot - qcom,sc7280-dwc3 486ae5de77eSEmmanuel Vadot - qcom,sc8180x-dwc3 487ae5de77eSEmmanuel Vadot - qcom,sc8280xp-dwc3 488ae5de77eSEmmanuel Vadot - qcom,sdm670-dwc3 489ae5de77eSEmmanuel Vadot - qcom,sdm845-dwc3 490ae5de77eSEmmanuel Vadot - qcom,sdx55-dwc3 491ae5de77eSEmmanuel Vadot - qcom,sdx65-dwc3 492ae5de77eSEmmanuel Vadot - qcom,sdx75-dwc3 493ae5de77eSEmmanuel Vadot - qcom,sm4250-dwc3 494ae5de77eSEmmanuel Vadot - qcom,sm6350-dwc3 495ae5de77eSEmmanuel Vadot - qcom,sm8150-dwc3 496ae5de77eSEmmanuel Vadot - qcom,sm8250-dwc3 497ae5de77eSEmmanuel Vadot - qcom,sm8350-dwc3 498ae5de77eSEmmanuel Vadot - qcom,sm8450-dwc3 499ae5de77eSEmmanuel Vadot - qcom,sm8550-dwc3 500ae5de77eSEmmanuel Vadot - qcom,sm8650-dwc3 501ae5de77eSEmmanuel Vadot then: 502ae5de77eSEmmanuel Vadot properties: 503ae5de77eSEmmanuel Vadot interrupts: 504ae5de77eSEmmanuel Vadot minItems: 5 505ae5de77eSEmmanuel Vadot maxItems: 6 506ae5de77eSEmmanuel Vadot interrupt-names: 507ae5de77eSEmmanuel Vadot minItems: 5 508ae5de77eSEmmanuel Vadot items: 509ae5de77eSEmmanuel Vadot - const: dwc_usb3 510ae5de77eSEmmanuel Vadot - const: pwr_event 511ae5de77eSEmmanuel Vadot - const: hs_phy_irq 512ae5de77eSEmmanuel Vadot - const: dp_hs_phy_irq 513ae5de77eSEmmanuel Vadot - const: dm_hs_phy_irq 514ae5de77eSEmmanuel Vadot - const: ss_phy_irq 515ae5de77eSEmmanuel Vadot 516ae5de77eSEmmanuel Vadot - if: 517ae5de77eSEmmanuel Vadot properties: 518ae5de77eSEmmanuel Vadot compatible: 519ae5de77eSEmmanuel Vadot contains: 520ae5de77eSEmmanuel Vadot enum: 521ae5de77eSEmmanuel Vadot - qcom,sc8180x-dwc3-mp 522ae5de77eSEmmanuel Vadot - qcom,x1e80100-dwc3-mp 523ae5de77eSEmmanuel Vadot then: 524ae5de77eSEmmanuel Vadot properties: 525ae5de77eSEmmanuel Vadot interrupts: 526ae5de77eSEmmanuel Vadot minItems: 11 527ae5de77eSEmmanuel Vadot maxItems: 11 528ae5de77eSEmmanuel Vadot interrupt-names: 529ae5de77eSEmmanuel Vadot items: 530ae5de77eSEmmanuel Vadot - const: dwc_usb3 531ae5de77eSEmmanuel Vadot - const: pwr_event_1 532ae5de77eSEmmanuel Vadot - const: pwr_event_2 533ae5de77eSEmmanuel Vadot - const: hs_phy_1 534ae5de77eSEmmanuel Vadot - const: hs_phy_2 535ae5de77eSEmmanuel Vadot - const: dp_hs_phy_1 536ae5de77eSEmmanuel Vadot - const: dm_hs_phy_1 537ae5de77eSEmmanuel Vadot - const: dp_hs_phy_2 538ae5de77eSEmmanuel Vadot - const: dm_hs_phy_2 539ae5de77eSEmmanuel Vadot - const: ss_phy_1 540ae5de77eSEmmanuel Vadot - const: ss_phy_2 541ae5de77eSEmmanuel Vadot 542ae5de77eSEmmanuel Vadot - if: 543ae5de77eSEmmanuel Vadot properties: 544ae5de77eSEmmanuel Vadot compatible: 545ae5de77eSEmmanuel Vadot contains: 546ae5de77eSEmmanuel Vadot enum: 547ae5de77eSEmmanuel Vadot - qcom,sc8280xp-dwc3-mp 548ae5de77eSEmmanuel Vadot then: 549ae5de77eSEmmanuel Vadot properties: 550ae5de77eSEmmanuel Vadot interrupts: 551ae5de77eSEmmanuel Vadot minItems: 19 552ae5de77eSEmmanuel Vadot maxItems: 19 553ae5de77eSEmmanuel Vadot interrupt-names: 554ae5de77eSEmmanuel Vadot items: 555ae5de77eSEmmanuel Vadot - const: dwc_usb3 556ae5de77eSEmmanuel Vadot - const: pwr_event_1 557ae5de77eSEmmanuel Vadot - const: pwr_event_2 558ae5de77eSEmmanuel Vadot - const: pwr_event_3 559ae5de77eSEmmanuel Vadot - const: pwr_event_4 560ae5de77eSEmmanuel Vadot - const: hs_phy_1 561ae5de77eSEmmanuel Vadot - const: hs_phy_2 562ae5de77eSEmmanuel Vadot - const: hs_phy_3 563ae5de77eSEmmanuel Vadot - const: hs_phy_4 564ae5de77eSEmmanuel Vadot - const: dp_hs_phy_1 565ae5de77eSEmmanuel Vadot - const: dm_hs_phy_1 566ae5de77eSEmmanuel Vadot - const: dp_hs_phy_2 567ae5de77eSEmmanuel Vadot - const: dm_hs_phy_2 568ae5de77eSEmmanuel Vadot - const: dp_hs_phy_3 569ae5de77eSEmmanuel Vadot - const: dm_hs_phy_3 570ae5de77eSEmmanuel Vadot - const: dp_hs_phy_4 571ae5de77eSEmmanuel Vadot - const: dm_hs_phy_4 572ae5de77eSEmmanuel Vadot - const: ss_phy_1 573ae5de77eSEmmanuel Vadot - const: ss_phy_2 574ae5de77eSEmmanuel Vadot 575ae5de77eSEmmanuel VadotunevaluatedProperties: false 576ae5de77eSEmmanuel Vadot 577ae5de77eSEmmanuel Vadotexamples: 578ae5de77eSEmmanuel Vadot - | 579ae5de77eSEmmanuel Vadot #include <dt-bindings/clock/qcom,gcc-sdm845.h> 580ae5de77eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 581ae5de77eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 582ae5de77eSEmmanuel Vadot soc { 583ae5de77eSEmmanuel Vadot #address-cells = <2>; 584ae5de77eSEmmanuel Vadot #size-cells = <2>; 585ae5de77eSEmmanuel Vadot 586ae5de77eSEmmanuel Vadot usb@a600000 { 587ae5de77eSEmmanuel Vadot compatible = "qcom,sdm845-dwc3", "qcom,snps-dwc3"; 588ae5de77eSEmmanuel Vadot reg = <0 0x0a600000 0 0x100000>; 589ae5de77eSEmmanuel Vadot 590ae5de77eSEmmanuel Vadot clocks = <&gcc GCC_CFG_NOC_USB3_PRIM_AXI_CLK>, 591ae5de77eSEmmanuel Vadot <&gcc GCC_USB30_PRIM_MASTER_CLK>, 592ae5de77eSEmmanuel Vadot <&gcc GCC_AGGRE_USB3_PRIM_AXI_CLK>, 593ae5de77eSEmmanuel Vadot <&gcc GCC_USB30_PRIM_SLEEP_CLK>, 594ae5de77eSEmmanuel Vadot <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>; 595ae5de77eSEmmanuel Vadot clock-names = "cfg_noc", 596ae5de77eSEmmanuel Vadot "core", 597ae5de77eSEmmanuel Vadot "iface", 598ae5de77eSEmmanuel Vadot "sleep", 599ae5de77eSEmmanuel Vadot "mock_utmi"; 600ae5de77eSEmmanuel Vadot 601ae5de77eSEmmanuel Vadot assigned-clocks = <&gcc GCC_USB30_PRIM_MOCK_UTMI_CLK>, 602ae5de77eSEmmanuel Vadot <&gcc GCC_USB30_PRIM_MASTER_CLK>; 603ae5de77eSEmmanuel Vadot assigned-clock-rates = <19200000>, <150000000>; 604ae5de77eSEmmanuel Vadot 605ae5de77eSEmmanuel Vadot interrupts = <GIC_SPI 133 IRQ_TYPE_LEVEL_HIGH>, 606ae5de77eSEmmanuel Vadot <GIC_SPI 130 IRQ_TYPE_LEVEL_HIGH>, 607ae5de77eSEmmanuel Vadot <GIC_SPI 131 IRQ_TYPE_LEVEL_HIGH>, 608ae5de77eSEmmanuel Vadot <GIC_SPI 489 IRQ_TYPE_EDGE_BOTH>, 609ae5de77eSEmmanuel Vadot <GIC_SPI 488 IRQ_TYPE_EDGE_BOTH>, 610ae5de77eSEmmanuel Vadot <GIC_SPI 486 IRQ_TYPE_LEVEL_HIGH>; 611ae5de77eSEmmanuel Vadot interrupt-names = "dwc_usb3", "pwr_event", "hs_phy_irq", 612ae5de77eSEmmanuel Vadot "dp_hs_phy_irq", "dm_hs_phy_irq", "ss_phy_irq"; 613ae5de77eSEmmanuel Vadot 614ae5de77eSEmmanuel Vadot power-domains = <&gcc USB30_PRIM_GDSC>; 615ae5de77eSEmmanuel Vadot 616ae5de77eSEmmanuel Vadot resets = <&gcc GCC_USB30_PRIM_BCR>; 617ae5de77eSEmmanuel Vadot 618ae5de77eSEmmanuel Vadot iommus = <&apps_smmu 0x740 0>; 619ae5de77eSEmmanuel Vadot snps,dis_u2_susphy_quirk; 620ae5de77eSEmmanuel Vadot snps,dis_enblslpm_quirk; 621ae5de77eSEmmanuel Vadot phys = <&usb_1_hsphy>, <&usb_1_ssphy>; 622ae5de77eSEmmanuel Vadot phy-names = "usb2-phy", "usb3-phy"; 623ae5de77eSEmmanuel Vadot }; 624ae5de77eSEmmanuel Vadot }; 625ae5de77eSEmmanuel Vadot... 626