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