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 Device Tree Bindings
8
9allOf:
10  - $ref: "usb-hcd.yaml"
11
12maintainers:
13  - Greg Kroah-Hartman <gregkh@linuxfoundation.org>
14
15properties:
16  compatible:
17    contains:
18      const: generic-ehci
19
20  reg:
21    maxItems: 1
22
23  interrupts:
24    maxItems: 1
25
26  resets:
27    minItems: 1
28    maxItems: 4
29
30  clocks:
31    minItems: 1
32    maxItems: 4
33    description: |
34      In case the Renesas R-Car Gen3 SoCs:
35        - if a host only channel: first clock should be host.
36        - if a USB DRD channel: first clock should be host and second
37          one should be peripheral
38
39  big-endian:
40    $ref: /schemas/types.yaml#/definitions/flag
41    description:
42      Set this flag for HCDs with big endian descriptors and big
43      endian registers.
44
45  big-endian-desc:
46    $ref: /schemas/types.yaml#/definitions/flag
47    description:
48      Set this flag for HCDs with big endian descriptors.
49
50  big-endian-regs:
51    $ref: /schemas/types.yaml#/definitions/flag
52    description:
53      Set this flag for HCDs with big endian registers.
54
55  has-transaction-translator:
56    $ref: /schemas/types.yaml#/definitions/flag
57    description:
58      Set this flag if EHCI has a Transaction Translator built into
59      the root hub.
60
61  needs-reset-on-resume:
62    $ref: /schemas/types.yaml#/definitions/flag
63    description:
64      Set this flag to force EHCI reset after resume.
65
66  phys: true
67
68required:
69  - compatible
70  - reg
71  - interrupts
72
73additionalProperties: false
74
75examples:
76  - |
77    ehci@e0000300 {
78        compatible = "ibm,usb-ehci-440epx", "generic-ehci";
79        interrupt-parent = <&UIC0>;
80        interrupts = <0x1a 4>;
81        reg = <0 0xe0000300 90 0 0xe0000390 70>;
82        big-endian;
83    };
84
85  - |
86    ehci0: usb@1c14000 {
87        compatible = "allwinner,sun4i-a10-ehci", "generic-ehci";
88        reg = <0x01c14000 0x100>;
89        interrupts = <39>;
90        clocks = <&ahb_gates 1>;
91        phys = <&usbphy 1>;
92        phy-names = "usb";
93    };
94
95...
96