1# SPDX-License-Identifier: GPL-2.0 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/usb/generic-ehci.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: USB EHCI Controller 8 9maintainers: 10 - Greg Kroah-Hartman <gregkh@linuxfoundation.org> 11 12allOf: 13 - $ref: usb-hcd.yaml 14 - if: 15 properties: 16 compatible: 17 not: 18 contains: 19 const: ibm,usb-ehci-440epx 20 then: 21 properties: 22 reg: 23 maxItems: 1 24 25properties: 26 compatible: 27 oneOf: 28 - items: 29 - enum: 30 - allwinner,sun4i-a10-ehci 31 - allwinner,sun50i-a100-ehci 32 - allwinner,sun50i-a64-ehci 33 - allwinner,sun50i-h6-ehci 34 - allwinner,sun50i-h616-ehci 35 - allwinner,sun55i-a523-ehci 36 - allwinner,sun5i-a13-ehci 37 - allwinner,sun6i-a31-ehci 38 - allwinner,sun7i-a20-ehci 39 - allwinner,sun8i-a23-ehci 40 - allwinner,sun8i-a83t-ehci 41 - allwinner,sun8i-h3-ehci 42 - allwinner,sun8i-r40-ehci 43 - allwinner,sun8i-v3s-ehci 44 - allwinner,sun9i-a80-ehci 45 - allwinner,sun20i-d1-ehci 46 - aspeed,ast2400-ehci 47 - aspeed,ast2500-ehci 48 - aspeed,ast2600-ehci 49 - aspeed,ast2700-ehci 50 - brcm,bcm3384-ehci 51 - brcm,bcm63268-ehci 52 - brcm,bcm6328-ehci 53 - brcm,bcm6358-ehci 54 - brcm,bcm6362-ehci 55 - brcm,bcm6368-ehci 56 - brcm,bcm7125-ehci 57 - brcm,bcm7346-ehci 58 - brcm,bcm7358-ehci 59 - brcm,bcm7360-ehci 60 - brcm,bcm7362-ehci 61 - brcm,bcm7420-ehci 62 - brcm,bcm7425-ehci 63 - brcm,bcm7435-ehci 64 - hpe,gxp-ehci 65 - ibm,476gtr-ehci 66 - nxp,lpc1850-ehci 67 - qca,ar7100-ehci 68 - rockchip,rk3588-ehci 69 - snps,hsdk-v1.0-ehci 70 - socionext,uniphier-ehci 71 - const: generic-ehci 72 - items: 73 - enum: 74 - atmel,at91sam9g45-ehci 75 - cavium,octeon-6335-ehci 76 - ibm,usb-ehci-440epx 77 - ibm,usb-ehci-460ex 78 - nintendo,hollywood-usb-ehci 79 - st,spear600-ehci 80 - const: usb-ehci 81 - enum: 82 - generic-ehci 83 - marvell,ac5-ehci 84 - marvell,armada-3700-ehci 85 - marvell,orion-ehci 86 - nuvoton,npcm750-ehci 87 - nuvoton,npcm845-ehci 88 - ti,ehci-omap 89 - usb-ehci 90 - via,vt8500-ehci 91 92 reg: 93 minItems: 1 94 maxItems: 2 95 96 dma-coherent: true 97 98 interrupts: 99 maxItems: 1 100 101 resets: 102 minItems: 1 103 maxItems: 4 104 105 clocks: 106 minItems: 1 107 maxItems: 4 108 description: | 109 In case the Renesas R-Car Gen3 SoCs: 110 - if a host only channel: first clock should be host. 111 - if a USB DRD channel: first clock should be host and second 112 one should be peripheral 113 114 power-domains: 115 maxItems: 1 116 117 big-endian: 118 $ref: /schemas/types.yaml#/definitions/flag 119 description: 120 Set this flag for HCDs with big endian descriptors and big 121 endian registers. 122 123 big-endian-desc: 124 $ref: /schemas/types.yaml#/definitions/flag 125 description: 126 Set this flag for HCDs with big endian descriptors. 127 128 big-endian-regs: 129 $ref: /schemas/types.yaml#/definitions/flag 130 description: 131 Set this flag for HCDs with big endian registers. 132 133 has-transaction-translator: 134 $ref: /schemas/types.yaml#/definitions/flag 135 description: 136 Set this flag if EHCI has a Transaction Translator built into 137 the root hub. 138 139 needs-reset-on-resume: 140 $ref: /schemas/types.yaml#/definitions/flag 141 description: 142 Set this flag to force EHCI reset after resume. 143 144 spurious-oc: 145 $ref: /schemas/types.yaml#/definitions/flag 146 description: 147 Set this flag to indicate that the hardware sometimes turns on 148 the OC bit when an over-current isn't actually present. 149 150 phys: 151 minItems: 1 152 maxItems: 3 153 154 phy-names: 155 const: usb 156 157 iommus: 158 maxItems: 1 159 160 dr_mode: 161 enum: 162 - host 163 - otg 164 165required: 166 - compatible 167 - reg 168 - interrupts 169 170unevaluatedProperties: false 171 172examples: 173 - | 174 usb@e0000300 { 175 compatible = "ibm,usb-ehci-440epx", "usb-ehci"; 176 interrupt-parent = <&UIC0>; 177 interrupts = <0x1a 4>; 178 reg = <0xe0000300 90>, <0xe0000390 70>; 179 big-endian; 180 }; 181 182 - | 183 ehci0: usb@1c14000 { 184 compatible = "allwinner,sun4i-a10-ehci", "generic-ehci"; 185 reg = <0x01c14000 0x100>; 186 interrupts = <39>; 187 clocks = <&ahb_gates 1>; 188 phys = <&usbphy 1>; 189 phy-names = "usb"; 190 }; 191 192... 193