1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/usb/samsung,exynos-usb2.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Samsung Exynos SoC USB 2.0 EHCI/OHCI Controller
8
9maintainers:
10  - Krzysztof Kozlowski <krzysztof.kozlowski@canonical.com>
11
12properties:
13  compatible:
14    enum:
15      - samsung,exynos4210-ehci
16      - samsung,exynos4210-ohci
17
18  clocks:
19    maxItems: 1
20
21  clock-names:
22    items:
23      - const: usbhost
24
25  interrupts:
26    maxItems: 1
27
28  phys:
29    minItems: 1
30    maxItems: 3
31
32  phy-names:
33    items:
34      enum: [host, hsic0, hsic1]
35    minItems: 1
36    maxItems: 3
37
38  reg:
39    maxItems: 1
40
41  samsung,vbus-gpio:
42    description:
43      Only for controller in EHCI mode, if present, specifies the GPIO that
44      needs to be pulled up for the bus to be powered.
45
46required:
47  - compatible
48  - clocks
49  - clock-names
50  - interrupts
51  - phys
52  - phy-names
53
54allOf:
55  - $ref: usb-hcd.yaml#
56  - if:
57      properties:
58        compatible:
59          contains:
60            const: samsung,exynos4210-ohci
61    then:
62      properties:
63        samsung,vbus-gpio: false
64
65unevaluatedProperties: false
66
67examples:
68  - |
69    #include <dt-bindings/clock/exynos5420.h>
70    #include <dt-bindings/interrupt-controller/arm-gic.h>
71
72    usb@12110000 {
73        compatible = "samsung,exynos4210-ehci";
74        reg = <0x12110000 0x100>;
75        interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
76        clocks = <&clock CLK_USBH20>;
77        clock-names = "usbhost";
78        phys = <&usb2_phy 0>;
79        phy-names = "host";
80
81        #address-cells = <1>;
82        #size-cells = <0>;
83
84        hub@1 {
85            compatible = "usb0424,9514";
86            reg = <1>;
87            #address-cells = <1>;
88            #size-cells = <0>;
89
90            usbether@1 {
91                compatible = "usb0424,ec00";
92                reg = <1>;
93                local-mac-address = [00 00 00 00 00 00];
94            };
95        };
96    };
97
98    usb@12120000 {
99        compatible = "samsung,exynos4210-ohci";
100        reg = <0x12120000 0x100>;
101        interrupts = <GIC_SPI 71 IRQ_TYPE_LEVEL_HIGH>;
102        clocks = <&clock CLK_USBH20>;
103        clock-names = "usbhost";
104        phys = <&usb2_phy 0>;
105        phy-names = "host";
106    };
107