1# SPDX-License-Identifier: GPL-2.0 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/usb/generic-ohci.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: USB OHCI Controller 8 9maintainers: 10 - Greg Kroah-Hartman <gregkh@linuxfoundation.org> 11 12properties: 13 compatible: 14 oneOf: 15 - items: 16 - enum: 17 - allwinner,sun4i-a10-ohci 18 - allwinner,sun50i-a100-ohci 19 - allwinner,sun50i-a64-ohci 20 - allwinner,sun50i-h6-ohci 21 - allwinner,sun50i-h616-ohci 22 - allwinner,sun55i-a523-ohci 23 - allwinner,sun5i-a13-ohci 24 - allwinner,sun6i-a31-ohci 25 - allwinner,sun7i-a20-ohci 26 - allwinner,sun8i-a23-ohci 27 - allwinner,sun8i-a83t-ohci 28 - allwinner,sun8i-h3-ohci 29 - allwinner,sun8i-r40-ohci 30 - allwinner,sun8i-v3s-ohci 31 - allwinner,sun9i-a80-ohci 32 - allwinner,sun20i-d1-ohci 33 - brcm,bcm3384-ohci 34 - brcm,bcm63268-ohci 35 - brcm,bcm6328-ohci 36 - brcm,bcm6358-ohci 37 - brcm,bcm6362-ohci 38 - brcm,bcm6368-ohci 39 - brcm,bcm7125-ohci 40 - brcm,bcm7346-ohci 41 - brcm,bcm7358-ohci 42 - brcm,bcm7360-ohci 43 - brcm,bcm7362-ohci 44 - brcm,bcm7420-ohci 45 - brcm,bcm7425-ohci 46 - brcm,bcm7435-ohci 47 - hpe,gxp-ohci 48 - ibm,476gtr-ohci 49 - ingenic,jz4740-ohci 50 - rockchip,rk3588-ohci 51 - snps,hsdk-v1.0-ohci 52 - const: generic-ohci 53 - enum: 54 - generic-ohci 55 - ti,ohci-omap3 56 - items: 57 - enum: 58 - atmel,at91rm9200-ohci 59 - cavium,octeon-6335-ohci 60 - nintendo,hollywood-usb-ohci 61 - nxp,ohci-nxp 62 - st,spear600-ohci 63 - const: usb-ohci 64 65 reg: 66 maxItems: 1 67 68 dma-coherent: true 69 70 interrupts: 71 maxItems: 1 72 73 resets: 74 minItems: 1 75 maxItems: 2 76 77 clocks: 78 minItems: 1 79 maxItems: 4 80 description: | 81 In case the Renesas R-Car Gen3 SoCs: 82 - if a host only channel: first clock should be host. 83 - if a USB DRD channel: first clock should be host and second 84 one should be peripheral 85 86 clock-names: 87 minItems: 1 88 maxItems: 4 89 90 power-domains: 91 maxItems: 1 92 93 big-endian: 94 $ref: /schemas/types.yaml#/definitions/flag 95 description: 96 Set this flag for HCDs with big endian descriptors and big 97 endian registers. 98 99 big-endian-desc: 100 $ref: /schemas/types.yaml#/definitions/flag 101 description: 102 Set this flag for HCDs with big endian descriptors. 103 104 big-endian-regs: 105 $ref: /schemas/types.yaml#/definitions/flag 106 description: 107 Set this flag for HCDs with big endian registers. 108 109 remote-wakeup-connected: 110 $ref: /schemas/types.yaml#/definitions/flag 111 description: 112 Remote wakeup is wired on the platform. 113 114 no-big-frame-no: 115 $ref: /schemas/types.yaml#/definitions/flag 116 description: 117 Set if frame_no lives in bits [15:0] of HCCA 118 119 num-ports: 120 $ref: /schemas/types.yaml#/definitions/uint32 121 description: 122 Overrides the detected port count 123 124 phys: 125 minItems: 1 126 maxItems: 3 127 128 phy-names: 129 const: usb 130 131 iommus: 132 maxItems: 1 133 134 dr_mode: 135 enum: 136 - host 137 - otg 138 139 transceiver: 140 $ref: /schemas/types.yaml#/definitions/phandle 141 description: 142 The associated ISP1301 device. Necessary for the UDC controller for 143 connecting to the USB physical layer. 144 145 atmel,vbus-gpio: 146 description: 147 GPIO used to control or sense the USB VBUS power. Each entry 148 represents a VBUS-related GPIO; count and order may vary by hardware. 149 Entries follow standard GPIO specifier format. A value of 0 indicates 150 an unused or unavailable VBUS signal. 151 minItems: 1 152 maxItems: 3 153 154 atmel,oc-gpio: 155 description: 156 GPIO used to signal USB overcurrent condition. Each entry represents 157 an OC detection GPIO; count and order may vary by hardware. Entries 158 follow standard GPIO specifier format. A value of 0 indicates an 159 unused or unavailable OC signal. 160 minItems: 1 161 maxItems: 3 162 163required: 164 - compatible 165 - reg 166 - interrupts 167 168allOf: 169 - $ref: usb-hcd.yaml 170 - if: 171 properties: 172 compatible: 173 contains: 174 const: atmel,at91rm9200-ohci 175 then: 176 properties: 177 clock-names: 178 items: 179 - const: ohci_clk 180 - const: hclk 181 - const: uhpck 182 183 required: 184 - clocks 185 - clock-names 186 187 else: 188 properties: 189 clock-names: false 190 atmel,vbus-gpio: false 191 atmel,oc-gpio: false 192 193 - if: 194 not: 195 properties: 196 compatible: 197 contains: 198 const: nxp,ohci-nxp 199 then: 200 properties: 201 transceiver: false 202 - if: 203 properties: 204 compatible: 205 contains: 206 const: rockchip,rk3588-ohci 207 then: 208 properties: 209 clocks: 210 minItems: 4 211 else: 212 properties: 213 clocks: 214 minItems: 1 215 maxItems: 3 216 217unevaluatedProperties: false 218 219examples: 220 - | 221 ohci0: usb@1c14400 { 222 compatible = "allwinner,sun4i-a10-ohci", "generic-ohci"; 223 reg = <0x01c14400 0x100>; 224 interrupts = <64>; 225 clocks = <&usb_clk 6>, <&ahb_gates 2>; 226 phys = <&usbphy 1>; 227 phy-names = "usb"; 228 }; 229 230... 231