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