1c3e2485dSMaxime Ripard# SPDX-License-Identifier: GPL-2.0
2c3e2485dSMaxime Ripard%YAML 1.2
3c3e2485dSMaxime Ripard---
4c3e2485dSMaxime Ripard$id: http://devicetree.org/schemas/usb/generic-ehci.yaml#
5c3e2485dSMaxime Ripard$schema: http://devicetree.org/meta-schemas/core.yaml#
6c3e2485dSMaxime Ripard
7c3e2485dSMaxime Ripardtitle: USB EHCI Controller Device Tree Bindings
8c3e2485dSMaxime Ripard
9c3e2485dSMaxime Ripardmaintainers:
10c3e2485dSMaxime Ripard  - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
11c3e2485dSMaxime Ripard
123c9ab53fSRob HerringallOf:
133c9ab53fSRob Herring  - $ref: "usb-hcd.yaml"
143c9ab53fSRob Herring  - if:
153c9ab53fSRob Herring      properties:
163c9ab53fSRob Herring        compatible:
173c9ab53fSRob Herring          not:
183c9ab53fSRob Herring            contains:
193c9ab53fSRob Herring              const: ibm,usb-ehci-440epx
203c9ab53fSRob Herring    then:
213c9ab53fSRob Herring      properties:
223c9ab53fSRob Herring        reg:
233c9ab53fSRob Herring          maxItems: 1
243c9ab53fSRob Herring
25c3e2485dSMaxime Ripardproperties:
26c3e2485dSMaxime Ripard  compatible:
275ae01e76SRob Herring    oneOf:
285ae01e76SRob Herring      - items:
295ae01e76SRob Herring          - enum:
305ae01e76SRob Herring              - allwinner,sun4i-a10-ehci
315ae01e76SRob Herring              - allwinner,sun50i-a64-ehci
325ae01e76SRob Herring              - allwinner,sun50i-h6-ehci
335ae01e76SRob Herring              - allwinner,sun5i-a13-ehci
345ae01e76SRob Herring              - allwinner,sun6i-a31-ehci
355ae01e76SRob Herring              - allwinner,sun7i-a20-ehci
365ae01e76SRob Herring              - allwinner,sun8i-a23-ehci
3739c0bf56SMaxime Ripard              - allwinner,sun8i-a83t-ehci
385ae01e76SRob Herring              - allwinner,sun8i-h3-ehci
395ae01e76SRob Herring              - allwinner,sun8i-r40-ehci
405ae01e76SRob Herring              - allwinner,sun9i-a80-ehci
415ae01e76SRob Herring              - aspeed,ast2400-ehci
425ae01e76SRob Herring              - aspeed,ast2500-ehci
435ae01e76SRob Herring              - aspeed,ast2600-ehci
445ae01e76SRob Herring              - brcm,bcm3384-ehci
455ae01e76SRob Herring              - brcm,bcm63268-ehci
465ae01e76SRob Herring              - brcm,bcm6328-ehci
475ae01e76SRob Herring              - brcm,bcm6358-ehci
485ae01e76SRob Herring              - brcm,bcm6362-ehci
495ae01e76SRob Herring              - brcm,bcm6368-ehci
505ae01e76SRob Herring              - brcm,bcm7125-ehci
515ae01e76SRob Herring              - brcm,bcm7346-ehci
525ae01e76SRob Herring              - brcm,bcm7358-ehci
535ae01e76SRob Herring              - brcm,bcm7360-ehci
545ae01e76SRob Herring              - brcm,bcm7362-ehci
555ae01e76SRob Herring              - brcm,bcm7420-ehci
565ae01e76SRob Herring              - brcm,bcm7425-ehci
575ae01e76SRob Herring              - brcm,bcm7435-ehci
58501c12a6SNick Hawkins              - hpe,gxp-ehci
595ae01e76SRob Herring              - ibm,476gtr-ehci
605ae01e76SRob Herring              - nxp,lpc1850-ehci
615ae01e76SRob Herring              - qca,ar7100-ehci
625ae01e76SRob Herring              - snps,hsdk-v1.0-ehci
635ae01e76SRob Herring              - socionext,uniphier-ehci
645ae01e76SRob Herring          - const: generic-ehci
655ae01e76SRob Herring      - items:
665ae01e76SRob Herring          - enum:
675ae01e76SRob Herring              - cavium,octeon-6335-ehci
685ae01e76SRob Herring              - ibm,usb-ehci-440epx
695ae01e76SRob Herring              - ibm,usb-ehci-460ex
705ae01e76SRob Herring              - nintendo,hollywood-usb-ehci
715ae01e76SRob Herring              - st,spear600-ehci
725ae01e76SRob Herring          - const: usb-ehci
735ae01e76SRob Herring      - enum:
745ae01e76SRob Herring          - generic-ehci
755ae01e76SRob Herring          - usb-ehci
76c3e2485dSMaxime Ripard
77c3e2485dSMaxime Ripard  reg:
783c9ab53fSRob Herring    minItems: 1
793c9ab53fSRob Herring    maxItems: 2
80c3e2485dSMaxime Ripard
81c3e2485dSMaxime Ripard  interrupts:
82c3e2485dSMaxime Ripard    maxItems: 1
83c3e2485dSMaxime Ripard
84c3e2485dSMaxime Ripard  resets:
85c3e2485dSMaxime Ripard    minItems: 1
86c3e2485dSMaxime Ripard    maxItems: 4
87c3e2485dSMaxime Ripard
88c3e2485dSMaxime Ripard  clocks:
89c3e2485dSMaxime Ripard    minItems: 1
90c3e2485dSMaxime Ripard    maxItems: 4
91c3e2485dSMaxime Ripard    description: |
92c3e2485dSMaxime Ripard      In case the Renesas R-Car Gen3 SoCs:
93c3e2485dSMaxime Ripard        - if a host only channel: first clock should be host.
94c3e2485dSMaxime Ripard        - if a USB DRD channel: first clock should be host and second
95c3e2485dSMaxime Ripard          one should be peripheral
96c3e2485dSMaxime Ripard
97f98d7c3aSGeert Uytterhoeven  power-domains:
98f98d7c3aSGeert Uytterhoeven    maxItems: 1
99f98d7c3aSGeert Uytterhoeven
100c3e2485dSMaxime Ripard  big-endian:
101c3e2485dSMaxime Ripard    $ref: /schemas/types.yaml#/definitions/flag
102c3e2485dSMaxime Ripard    description:
103c3e2485dSMaxime Ripard      Set this flag for HCDs with big endian descriptors and big
104c3e2485dSMaxime Ripard      endian registers.
105c3e2485dSMaxime Ripard
106c3e2485dSMaxime Ripard  big-endian-desc:
107c3e2485dSMaxime Ripard    $ref: /schemas/types.yaml#/definitions/flag
108c3e2485dSMaxime Ripard    description:
109c3e2485dSMaxime Ripard      Set this flag for HCDs with big endian descriptors.
110c3e2485dSMaxime Ripard
111c3e2485dSMaxime Ripard  big-endian-regs:
112c3e2485dSMaxime Ripard    $ref: /schemas/types.yaml#/definitions/flag
113c3e2485dSMaxime Ripard    description:
114c3e2485dSMaxime Ripard      Set this flag for HCDs with big endian registers.
115c3e2485dSMaxime Ripard
116c3e2485dSMaxime Ripard  has-transaction-translator:
117c3e2485dSMaxime Ripard    $ref: /schemas/types.yaml#/definitions/flag
118c3e2485dSMaxime Ripard    description:
119c3e2485dSMaxime Ripard      Set this flag if EHCI has a Transaction Translator built into
120c3e2485dSMaxime Ripard      the root hub.
121c3e2485dSMaxime Ripard
122c3e2485dSMaxime Ripard  needs-reset-on-resume:
123c3e2485dSMaxime Ripard    $ref: /schemas/types.yaml#/definitions/flag
124c3e2485dSMaxime Ripard    description:
125c3e2485dSMaxime Ripard      Set this flag to force EHCI reset after resume.
126c3e2485dSMaxime Ripard
12781d23855SÁlvaro Fernández Rojas  spurious-oc:
12881d23855SÁlvaro Fernández Rojas    $ref: /schemas/types.yaml#/definitions/flag
12981d23855SÁlvaro Fernández Rojas    description:
13081d23855SÁlvaro Fernández Rojas      Set this flag to indicate that the hardware sometimes turns on
13181d23855SÁlvaro Fernández Rojas      the OC bit when an over-current isn't actually present.
13281d23855SÁlvaro Fernández Rojas
13302ceb12cSAlexandre Torgue  companion:
13402ceb12cSAlexandre Torgue    $ref: /schemas/types.yaml#/definitions/phandle
13502ceb12cSAlexandre Torgue    description:
13602ceb12cSAlexandre Torgue      Phandle of a companion.
13702ceb12cSAlexandre Torgue
1383aa3c66aSMaxime Ripard  phys:
139*9faa1c8fSGeert Uytterhoeven    minItems: 1
140*9faa1c8fSGeert Uytterhoeven    maxItems: 3
1413aa3c66aSMaxime Ripard
1423aa3c66aSMaxime Ripard  phy-names:
1433aa3c66aSMaxime Ripard    const: usb
144c3e2485dSMaxime Ripard
14559ffe4edSAndre Przywara  iommus:
14659ffe4edSAndre Przywara    maxItems: 1
14759ffe4edSAndre Przywara
14831f21e2aSBiju Das  dr_mode:
14931f21e2aSBiju Das    enum:
15031f21e2aSBiju Das      - host
15131f21e2aSBiju Das      - otg
15231f21e2aSBiju Das
153c3e2485dSMaxime Ripardrequired:
154c3e2485dSMaxime Ripard  - compatible
155c3e2485dSMaxime Ripard  - reg
156c3e2485dSMaxime Ripard  - interrupts
157c3e2485dSMaxime Ripard
158c3e2485dSMaxime RipardadditionalProperties: false
159c3e2485dSMaxime Ripard
160c3e2485dSMaxime Ripardexamples:
161c3e2485dSMaxime Ripard  - |
1625ff88144SMaxime Ripard    usb@e0000300 {
1635ae01e76SRob Herring        compatible = "ibm,usb-ehci-440epx", "usb-ehci";
164c3e2485dSMaxime Ripard        interrupt-parent = <&UIC0>;
165c3e2485dSMaxime Ripard        interrupts = <0x1a 4>;
166fba56184SRob Herring        reg = <0xe0000300 90>, <0xe0000390 70>;
167c3e2485dSMaxime Ripard        big-endian;
168c3e2485dSMaxime Ripard    };
169c3e2485dSMaxime Ripard
170c3e2485dSMaxime Ripard  - |
171c3e2485dSMaxime Ripard    ehci0: usb@1c14000 {
172c3e2485dSMaxime Ripard        compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
173c3e2485dSMaxime Ripard        reg = <0x01c14000 0x100>;
174c3e2485dSMaxime Ripard        interrupts = <39>;
175c3e2485dSMaxime Ripard        clocks = <&ahb_gates 1>;
176c3e2485dSMaxime Ripard        phys = <&usbphy 1>;
1773aa3c66aSMaxime Ripard        phy-names = "usb";
178c3e2485dSMaxime Ripard    };
179c3e2485dSMaxime Ripard
180c3e2485dSMaxime Ripard...
181