1134ab284SKunihiko Hayashi# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2134ab284SKunihiko Hayashi%YAML 1.2
3134ab284SKunihiko Hayashi---
4134ab284SKunihiko Hayashi$id: http://devicetree.org/schemas/phy/socionext,uniphier-usb3hs-phy.yaml#
5134ab284SKunihiko Hayashi$schema: http://devicetree.org/meta-schemas/core.yaml#
6134ab284SKunihiko Hayashi
7134ab284SKunihiko Hayashititle: Socionext UniPhier USB3 High-Speed (HS) PHY
8134ab284SKunihiko Hayashi
9134ab284SKunihiko Hayashidescription: |
10134ab284SKunihiko Hayashi  This describes the devicetree bindings for PHY interfaces built into
11134ab284SKunihiko Hayashi  USB3 controller implemented on Socionext UniPhier SoCs.
12134ab284SKunihiko Hayashi  Although the controller includes High-Speed PHY and Super-Speed PHY,
13134ab284SKunihiko Hayashi  this describes about High-Speed PHY.
14134ab284SKunihiko Hayashi
15134ab284SKunihiko Hayashimaintainers:
16134ab284SKunihiko Hayashi  - Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
17134ab284SKunihiko Hayashi
18134ab284SKunihiko Hayashiproperties:
19134ab284SKunihiko Hayashi  compatible:
20134ab284SKunihiko Hayashi    enum:
21134ab284SKunihiko Hayashi      - socionext,uniphier-pro5-usb3-hsphy
22134ab284SKunihiko Hayashi      - socionext,uniphier-pxs2-usb3-hsphy
23134ab284SKunihiko Hayashi      - socionext,uniphier-ld20-usb3-hsphy
24134ab284SKunihiko Hayashi      - socionext,uniphier-pxs3-usb3-hsphy
25d0cfb865SKunihiko Hayashi      - socionext,uniphier-nx1-usb3-hsphy
26134ab284SKunihiko Hayashi
27134ab284SKunihiko Hayashi  reg:
280499220dSRob Herring    maxItems: 1
29134ab284SKunihiko Hayashi
30134ab284SKunihiko Hayashi  "#phy-cells":
31134ab284SKunihiko Hayashi    const: 0
32134ab284SKunihiko Hayashi
33134ab284SKunihiko Hayashi  clocks:
3445d1f841SKunihiko Hayashi    minItems: 2
3503815930SKunihiko Hayashi    maxItems: 3
36134ab284SKunihiko Hayashi
37*09cc358aSKunihiko Hayashi  clock-names: true
38134ab284SKunihiko Hayashi
39134ab284SKunihiko Hayashi  resets:
40134ab284SKunihiko Hayashi    maxItems: 2
41134ab284SKunihiko Hayashi
42*09cc358aSKunihiko Hayashi  reset-names: true
43134ab284SKunihiko Hayashi
44134ab284SKunihiko Hayashi  vbus-supply:
45134ab284SKunihiko Hayashi    description: A phandle to the regulator for USB VBUS
46134ab284SKunihiko Hayashi
47134ab284SKunihiko Hayashi  nvmem-cells:
48134ab284SKunihiko Hayashi    maxItems: 3
49134ab284SKunihiko Hayashi    description:
50134ab284SKunihiko Hayashi      Phandles to nvmem cell that contains the trimming data.
51134ab284SKunihiko Hayashi      Available only for HS-PHY implemented on LD20 and PXs3, and
52134ab284SKunihiko Hayashi      if unspecified, default value is used.
53134ab284SKunihiko Hayashi
54134ab284SKunihiko Hayashi  nvmem-cell-names:
55134ab284SKunihiko Hayashi    items:
56134ab284SKunihiko Hayashi      - const: rterm
57134ab284SKunihiko Hayashi      - const: sel_t
58134ab284SKunihiko Hayashi      - const: hs_i
59134ab284SKunihiko Hayashi    description:
60134ab284SKunihiko Hayashi      Should be the following names, which correspond to each nvmem-cells.
61134ab284SKunihiko Hayashi      All of the 3 parameters associated with the above names are
62134ab284SKunihiko Hayashi      required for each port, if any one is omitted, the trimming data
63134ab284SKunihiko Hayashi      of the port will not be set at all.
64134ab284SKunihiko Hayashi
65*09cc358aSKunihiko HayashiallOf:
66*09cc358aSKunihiko Hayashi  - if:
67*09cc358aSKunihiko Hayashi      properties:
68*09cc358aSKunihiko Hayashi        compatible:
69*09cc358aSKunihiko Hayashi          contains:
70*09cc358aSKunihiko Hayashi            const: socionext,uniphier-pro5-usb3-hsphy
71*09cc358aSKunihiko Hayashi    then:
72*09cc358aSKunihiko Hayashi      properties:
73*09cc358aSKunihiko Hayashi        clocks:
74*09cc358aSKunihiko Hayashi          minItems: 2
75*09cc358aSKunihiko Hayashi          maxItems: 2
76*09cc358aSKunihiko Hayashi        clock-names:
77*09cc358aSKunihiko Hayashi          items:
78*09cc358aSKunihiko Hayashi            - const: gio
79*09cc358aSKunihiko Hayashi            - const: link
80*09cc358aSKunihiko Hayashi        resets:
81*09cc358aSKunihiko Hayashi          minItems: 2
82*09cc358aSKunihiko Hayashi          maxItems: 2
83*09cc358aSKunihiko Hayashi        reset-names:
84*09cc358aSKunihiko Hayashi          items:
85*09cc358aSKunihiko Hayashi            - const: gio
86*09cc358aSKunihiko Hayashi            - const: link
87*09cc358aSKunihiko Hayashi  - if:
88*09cc358aSKunihiko Hayashi      properties:
89*09cc358aSKunihiko Hayashi        compatible:
90*09cc358aSKunihiko Hayashi          contains:
91*09cc358aSKunihiko Hayashi            enum:
92*09cc358aSKunihiko Hayashi              - socionext,uniphier-pxs2-usb3-hsphy
93*09cc358aSKunihiko Hayashi              - socionext,uniphier-ld20-usb3-hsphy
94*09cc358aSKunihiko Hayashi    then:
95*09cc358aSKunihiko Hayashi      properties:
96*09cc358aSKunihiko Hayashi        clocks:
97*09cc358aSKunihiko Hayashi          minItems: 2
98*09cc358aSKunihiko Hayashi          maxItems: 2
99*09cc358aSKunihiko Hayashi        clock-names:
100*09cc358aSKunihiko Hayashi          items:
101*09cc358aSKunihiko Hayashi            - const: link
102*09cc358aSKunihiko Hayashi            - const: phy
103*09cc358aSKunihiko Hayashi        resets:
104*09cc358aSKunihiko Hayashi          minItems: 2
105*09cc358aSKunihiko Hayashi          maxItems: 2
106*09cc358aSKunihiko Hayashi        reset-names:
107*09cc358aSKunihiko Hayashi          items:
108*09cc358aSKunihiko Hayashi            - const: link
109*09cc358aSKunihiko Hayashi            - const: phy
110*09cc358aSKunihiko Hayashi  - if:
111*09cc358aSKunihiko Hayashi      properties:
112*09cc358aSKunihiko Hayashi        compatible:
113*09cc358aSKunihiko Hayashi          contains:
114*09cc358aSKunihiko Hayashi            enum:
115*09cc358aSKunihiko Hayashi              - socionext,uniphier-pxs3-usb3-hsphy
116*09cc358aSKunihiko Hayashi              - socionext,uniphier-nx1-usb3-hsphy
117*09cc358aSKunihiko Hayashi    then:
118*09cc358aSKunihiko Hayashi      properties:
119*09cc358aSKunihiko Hayashi        clocks:
120*09cc358aSKunihiko Hayashi          minItems: 2
121*09cc358aSKunihiko Hayashi          maxItems: 3
122*09cc358aSKunihiko Hayashi        clock-names:
123*09cc358aSKunihiko Hayashi          minItems: 2
124*09cc358aSKunihiko Hayashi          items:
125*09cc358aSKunihiko Hayashi            - const: link
126*09cc358aSKunihiko Hayashi            - const: phy
127*09cc358aSKunihiko Hayashi            - const: phy-ext
128*09cc358aSKunihiko Hayashi        resets:
129*09cc358aSKunihiko Hayashi          minItems: 2
130*09cc358aSKunihiko Hayashi          maxItems: 2
131*09cc358aSKunihiko Hayashi        reset-names:
132*09cc358aSKunihiko Hayashi          items:
133*09cc358aSKunihiko Hayashi            - const: link
134*09cc358aSKunihiko Hayashi            - const: phy
135*09cc358aSKunihiko Hayashi
136134ab284SKunihiko Hayashirequired:
137134ab284SKunihiko Hayashi  - compatible
138134ab284SKunihiko Hayashi  - reg
139134ab284SKunihiko Hayashi  - "#phy-cells"
140134ab284SKunihiko Hayashi  - clocks
141134ab284SKunihiko Hayashi  - clock-names
142134ab284SKunihiko Hayashi  - resets
143134ab284SKunihiko Hayashi  - reset-names
144134ab284SKunihiko Hayashi
145134ab284SKunihiko HayashiadditionalProperties: false
146134ab284SKunihiko Hayashi
147134ab284SKunihiko Hayashiexamples:
148134ab284SKunihiko Hayashi  - |
149134ab284SKunihiko Hayashi    usb-glue@65b00000 {
150134ab284SKunihiko Hayashi        compatible = "socionext,uniphier-ld20-dwc3-glue", "simple-mfd";
151134ab284SKunihiko Hayashi        #address-cells = <1>;
152134ab284SKunihiko Hayashi        #size-cells = <1>;
153134ab284SKunihiko Hayashi        ranges = <0 0x65b00000 0x400>;
154134ab284SKunihiko Hayashi
155134ab284SKunihiko Hayashi        usb_hsphy0: hs-phy@200 {
156134ab284SKunihiko Hayashi            compatible = "socionext,uniphier-ld20-usb3-hsphy";
157134ab284SKunihiko Hayashi            reg = <0x200 0x10>;
158134ab284SKunihiko Hayashi            #phy-cells = <0>;
159134ab284SKunihiko Hayashi            clock-names = "link", "phy";
160134ab284SKunihiko Hayashi            clocks = <&sys_clk 14>, <&sys_clk 16>;
161134ab284SKunihiko Hayashi            reset-names = "link", "phy";
162134ab284SKunihiko Hayashi            resets = <&sys_rst 14>, <&sys_rst 16>;
163134ab284SKunihiko Hayashi            vbus-supply = <&usb_vbus0>;
164134ab284SKunihiko Hayashi            nvmem-cell-names = "rterm", "sel_t", "hs_i";
165134ab284SKunihiko Hayashi            nvmem-cells = <&usb_rterm0>, <&usb_sel_t0>, <&usb_hs_i0>;
166134ab284SKunihiko Hayashi        };
167134ab284SKunihiko Hayashi    };
168