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