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