1# SPDX-License-Identifier: GPL-2.0-only 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/usb/renesas,usbhs.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Renesas USBHS (HS-USB) controller 8 9maintainers: 10 - Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com> 11 12properties: 13 compatible: 14 oneOf: 15 - items: 16 - const: renesas,usbhs-r7s72100 # RZ/A1 17 - const: renesas,rza1-usbhs 18 19 - items: 20 - enum: 21 - renesas,usbhs-r7s9210 # RZ/A2 22 - renesas,usbhs-r9a07g044 # RZ/G2{L,LC} 23 - renesas,usbhs-r9a07g054 # RZ/V2L 24 - const: renesas,rza2-usbhs 25 26 - items: 27 - enum: 28 - renesas,usbhs-r8a7742 # RZ/G1H 29 - renesas,usbhs-r8a7743 # RZ/G1M 30 - renesas,usbhs-r8a7744 # RZ/G1N 31 - renesas,usbhs-r8a7745 # RZ/G1E 32 - renesas,usbhs-r8a77470 # RZ/G1C 33 - renesas,usbhs-r8a7790 # R-Car H2 34 - renesas,usbhs-r8a7791 # R-Car M2-W 35 - renesas,usbhs-r8a7792 # R-Car V2H 36 - renesas,usbhs-r8a7793 # R-Car M2-N 37 - renesas,usbhs-r8a7794 # R-Car E2 38 - const: renesas,rcar-gen2-usbhs 39 40 - items: 41 - enum: 42 - renesas,usbhs-r8a774a1 # RZ/G2M 43 - renesas,usbhs-r8a774b1 # RZ/G2N 44 - renesas,usbhs-r8a774c0 # RZ/G2E 45 - renesas,usbhs-r8a774e1 # RZ/G2H 46 - renesas,usbhs-r8a7795 # R-Car H3 47 - renesas,usbhs-r8a7796 # R-Car M3-W 48 - renesas,usbhs-r8a77961 # R-Car M3-W+ 49 - renesas,usbhs-r8a77965 # R-Car M3-N 50 - renesas,usbhs-r8a77990 # R-Car E3 51 - renesas,usbhs-r8a77995 # R-Car D3 52 - const: renesas,rcar-gen3-usbhs 53 54 reg: 55 maxItems: 1 56 57 clocks: 58 minItems: 1 59 items: 60 - description: USB 2.0 host 61 - description: USB 2.0 peripheral 62 - description: USB 2.0 clock selector 63 64 interrupts: 65 minItems: 1 66 maxItems: 4 67 68 renesas,buswait: 69 $ref: /schemas/types.yaml#/definitions/uint32 70 description: | 71 Integer to use BUSWAIT register. 72 73 renesas,enable-gpio: 74 maxItems: 1 75 description: | 76 gpio specifier to check GPIO determining if USB function should be 77 enabled. 78 79 phys: 80 maxItems: 1 81 82 phy-names: 83 items: 84 - const: usb 85 86 dmas: 87 minItems: 2 88 maxItems: 4 89 90 dma-names: 91 minItems: 2 92 items: 93 - const: ch0 94 - const: ch1 95 - const: ch2 96 - const: ch3 97 98 dr_mode: true 99 100 power-domains: 101 maxItems: 1 102 103 resets: 104 minItems: 1 105 items: 106 - description: USB 2.0 host 107 - description: USB 2.0 peripheral 108 109required: 110 - compatible 111 - reg 112 - clocks 113 - interrupts 114 115allOf: 116 - if: 117 properties: 118 compatible: 119 contains: 120 enum: 121 - renesas,usbhs-r9a07g044 122 - renesas,usbhs-r9a07g054 123 then: 124 properties: 125 interrupts: 126 items: 127 - description: U2P_IXL_INT 128 - description: U2P_INT_DMA[0] 129 - description: U2P_INT_DMA[1] 130 - description: U2P_INT_DMAERR 131 else: 132 properties: 133 interrupts: 134 maxItems: 1 135 136additionalProperties: false 137 138examples: 139 - | 140 #include <dt-bindings/clock/r8a7790-cpg-mssr.h> 141 #include <dt-bindings/interrupt-controller/arm-gic.h> 142 #include <dt-bindings/power/r8a7790-sysc.h> 143 144 usbhs: usb@e6590000 { 145 compatible = "renesas,usbhs-r8a7790", "renesas,rcar-gen2-usbhs"; 146 reg = <0xe6590000 0x100>; 147 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 148 clocks = <&cpg CPG_MOD 704>; 149 }; 150