Merge branch 'for-5.11' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
[linux-2.6-microblaze.git] / Documentation / devicetree / bindings / phy / socionext,uniphier-usb2-phy.yaml
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
7 title: Socionext UniPhier USB2 PHY
8
9 description: |
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
16 maintainers:
17   - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
18
19 properties:
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
31 patternProperties:
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
50 required:
51   - compatible
52   - "#address-cells"
53   - "#size-cells"
54
55 additionalProperties: false
56
57 examples:
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     };