xref: /freebsd/sys/contrib/device-tree/Bindings/phy/socionext,uniphier-usb2-phy.yaml (revision 3078531de10dcae44b253a35125c949ff4235284)
1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2%YAML 1.2
3---
4$id: http://devicetree.org/schemas/phy/socionext,uniphier-usb2-phy.yaml#
5$schema: http://devicetree.org/meta-schemas/core.yaml#
6
7title: Socionext UniPhier USB2 PHY
8
9description: |
10  This describes the devicetree bindings for PHY interface built into
11  USB2 controller implemented on Socionext UniPhier SoCs.
12  Pro4 SoC has both USB2 and USB3 host controllers, however, this USB3
13  controller doesn't include its own High-Speed PHY. This needs to specify
14  USB2 PHY instead of USB3 HS-PHY.
15
16maintainers:
17  - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
18
19properties:
20  compatible:
21    enum:
22      - socionext,uniphier-pro4-usb2-phy
23      - socionext,uniphier-ld11-usb2-phy
24
25  "#address-cells":
26    const: 1
27
28  "#size-cells":
29    const: 0
30
31patternProperties:
32  "^phy@[0-9]+$":
33    type: object
34    additionalProperties: false
35
36    properties:
37      reg:
38        minimum: 0
39        maximum: 3
40        description:
41          The ID number for the PHY
42
43      "#phy-cells":
44        const: 0
45
46    required:
47      - reg
48      - "#phy-cells"
49
50required:
51  - compatible
52  - "#address-cells"
53  - "#size-cells"
54
55additionalProperties: false
56
57examples:
58  - |
59    // The UniPhier usb2-phy should be a subnode of a "syscon" compatible node.
60
61    soc-glue@5f800000 {
62        compatible = "socionext,uniphier-ld11-soc-glue", "simple-mfd", "syscon";
63        reg = <0x5f800000 0x2000>;
64
65        usb-controller {
66            compatible = "socionext,uniphier-ld11-usb2-phy";
67            #address-cells = <1>;
68            #size-cells = <0>;
69
70            usb_phy0: phy@0 {
71                reg = <0>;
72                #phy-cells = <0>;
73            };
74
75            usb_phy1: phy@1 {
76                reg = <1>;
77                #phy-cells = <0>;
78            };
79
80            usb_phy2: phy@2 {
81                reg = <2>;
82                #phy-cells = <0>;
83            };
84        };
85    };
86