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 - const: renesas,rza2-usbhs 23 24 - items: 25 - enum: 26 - renesas,usbhs-r9a07g043 # RZ/G2UL and RZ/Five 27 - renesas,usbhs-r9a07g044 # RZ/G2{L,LC} 28 - renesas,usbhs-r9a07g054 # RZ/V2L 29 - renesas,usbhs-r9a08g045 # RZ/G3S 30 - renesas,usbhs-r9a09g057 # RZ/V2H(P) 31 - const: renesas,rzg2l-usbhs 32 33 - items: 34 - enum: 35 - renesas,usbhs-r8a7742 # RZ/G1H 36 - renesas,usbhs-r8a7743 # RZ/G1M 37 - renesas,usbhs-r8a7744 # RZ/G1N 38 - renesas,usbhs-r8a7745 # RZ/G1E 39 - renesas,usbhs-r8a77470 # RZ/G1C 40 - renesas,usbhs-r8a7790 # R-Car H2 41 - renesas,usbhs-r8a7791 # R-Car M2-W 42 - renesas,usbhs-r8a7792 # R-Car V2H 43 - renesas,usbhs-r8a7793 # R-Car M2-N 44 - renesas,usbhs-r8a7794 # R-Car E2 45 - const: renesas,rcar-gen2-usbhs 46 47 - items: 48 - enum: 49 - renesas,usbhs-r8a774a1 # RZ/G2M 50 - renesas,usbhs-r8a774b1 # RZ/G2N 51 - renesas,usbhs-r8a774c0 # RZ/G2E 52 - renesas,usbhs-r8a774e1 # RZ/G2H 53 - renesas,usbhs-r8a7795 # R-Car H3 54 - renesas,usbhs-r8a7796 # R-Car M3-W 55 - renesas,usbhs-r8a77961 # R-Car M3-W+ 56 - renesas,usbhs-r8a77965 # R-Car M3-N 57 - renesas,usbhs-r8a77990 # R-Car E3 58 - renesas,usbhs-r8a77995 # R-Car D3 59 - const: renesas,rcar-gen3-usbhs 60 61 reg: 62 maxItems: 1 63 64 clocks: 65 minItems: 1 66 items: 67 - description: USB 2.0 host 68 - description: USB 2.0 peripheral 69 - description: USB 2.0 clock selector 70 71 interrupts: 72 minItems: 1 73 maxItems: 4 74 75 renesas,buswait: 76 $ref: /schemas/types.yaml#/definitions/uint32 77 description: | 78 Integer to use BUSWAIT register. 79 80 renesas,enable-gpio: 81 deprecated: true 82 maxItems: 1 83 84 renesas,enable-gpios: 85 maxItems: 1 86 description: | 87 gpio specifier to check GPIO determining if USB function should be 88 enabled. 89 90 phys: 91 maxItems: 1 92 93 phy-names: 94 items: 95 - const: usb 96 97 dmas: 98 minItems: 2 99 maxItems: 4 100 101 dma-names: 102 minItems: 2 103 items: 104 - const: ch0 105 - const: ch1 106 - const: ch2 107 - const: ch3 108 109 dr_mode: true 110 111 power-domains: 112 maxItems: 1 113 114 resets: 115 minItems: 1 116 items: 117 - description: USB 2.0 host 118 - description: USB 2.0 peripheral 119 120required: 121 - compatible 122 - reg 123 - clocks 124 - interrupts 125 126allOf: 127 - if: 128 properties: 129 compatible: 130 contains: 131 const: renesas,rzg2l-usbhs 132 then: 133 properties: 134 interrupts: 135 items: 136 - description: U2P_IXL_INT 137 - description: U2P_INT_DMA[0] 138 - description: U2P_INT_DMA[1] 139 - description: U2P_INT_DMAERR 140 required: 141 - resets 142 else: 143 properties: 144 interrupts: 145 maxItems: 1 146 147additionalProperties: false 148 149examples: 150 - | 151 #include <dt-bindings/clock/r8a7790-cpg-mssr.h> 152 #include <dt-bindings/interrupt-controller/arm-gic.h> 153 #include <dt-bindings/power/r8a7790-sysc.h> 154 155 usbhs: usb@e6590000 { 156 compatible = "renesas,usbhs-r8a7790", "renesas,rcar-gen2-usbhs"; 157 reg = <0xe6590000 0x100>; 158 interrupts = <GIC_SPI 107 IRQ_TYPE_LEVEL_HIGH>; 159 clocks = <&cpg CPG_MOD 704>; 160 }; 161