xref: /linux/Documentation/devicetree/bindings/phy/ti,phy-j721e-wiz.yaml (revision e43462c15b33a15816d8d6373ff721c17f5436e1)
1ad044f01SKishon Vijay Abraham I# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2ad044f01SKishon Vijay Abraham I# Copyright (C) 2019 Texas Instruments Incorporated - http://www.ti.com/
3ad044f01SKishon Vijay Abraham I%YAML 1.2
4ad044f01SKishon Vijay Abraham I---
5*e43462c1SRob Herring$id: http://devicetree.org/schemas/phy/ti,phy-j721e-wiz.yaml#
6*e43462c1SRob Herring$schema: http://devicetree.org/meta-schemas/core.yaml#
7ad044f01SKishon Vijay Abraham I
8ad044f01SKishon Vijay Abraham Ititle: TI J721E WIZ (SERDES Wrapper)
9ad044f01SKishon Vijay Abraham I
10ad044f01SKishon Vijay Abraham Imaintainers:
11ad044f01SKishon Vijay Abraham I  - Kishon Vijay Abraham I <kishon@ti.com>
12ad044f01SKishon Vijay Abraham I
13ad044f01SKishon Vijay Abraham Iproperties:
14ad044f01SKishon Vijay Abraham I  compatible:
15ad044f01SKishon Vijay Abraham I    enum:
16ad044f01SKishon Vijay Abraham I      - ti,j721e-wiz-16g
17ad044f01SKishon Vijay Abraham I      - ti,j721e-wiz-10g
18f12faa3bSMatt Ranostay      - ti,j721s2-wiz-10g
196c363eafSKishon Vijay Abraham I      - ti,am64-wiz-10g
20d5f2e747SRoger Quadros      - ti,j7200-wiz-10g
21cbdbe312SMatt Ranostay      - ti,j784s4-wiz-10g
22ad044f01SKishon Vijay Abraham I
23ad044f01SKishon Vijay Abraham I  power-domains:
24ad044f01SKishon Vijay Abraham I    maxItems: 1
25ad044f01SKishon Vijay Abraham I
26ad044f01SKishon Vijay Abraham I  clocks:
27d5f2e747SRoger Quadros    minItems: 3
28d5f2e747SRoger Quadros    maxItems: 4
29ad044f01SKishon Vijay Abraham I    description: clock-specifier to represent input to the WIZ
30ad044f01SKishon Vijay Abraham I
31ad044f01SKishon Vijay Abraham I  clock-names:
32d5f2e747SRoger Quadros    minItems: 3
33ad044f01SKishon Vijay Abraham I    items:
34ad044f01SKishon Vijay Abraham I      - const: fck
35ad044f01SKishon Vijay Abraham I      - const: core_ref_clk
36ad044f01SKishon Vijay Abraham I      - const: ext_ref_clk
37d5f2e747SRoger Quadros      - const: core_ref1_clk
38ad044f01SKishon Vijay Abraham I
39ad044f01SKishon Vijay Abraham I  num-lanes:
40ad044f01SKishon Vijay Abraham I    minimum: 1
41ad044f01SKishon Vijay Abraham I    maximum: 4
42ad044f01SKishon Vijay Abraham I
43ad044f01SKishon Vijay Abraham I  "#address-cells":
44ad044f01SKishon Vijay Abraham I    const: 1
45ad044f01SKishon Vijay Abraham I
46ad044f01SKishon Vijay Abraham I  "#size-cells":
47ad044f01SKishon Vijay Abraham I    const: 1
48ad044f01SKishon Vijay Abraham I
49ad044f01SKishon Vijay Abraham I  "#reset-cells":
50ad044f01SKishon Vijay Abraham I    const: 1
51ad044f01SKishon Vijay Abraham I
526c363eafSKishon Vijay Abraham I  "#clock-cells":
536c363eafSKishon Vijay Abraham I    const: 1
546c363eafSKishon Vijay Abraham I
55ad044f01SKishon Vijay Abraham I  ranges: true
56ad044f01SKishon Vijay Abraham I
57ad044f01SKishon Vijay Abraham I  assigned-clocks:
58b7132285STomi Valkeinen    minItems: 1
59ad044f01SKishon Vijay Abraham I    maxItems: 2
60ad044f01SKishon Vijay Abraham I
61ad044f01SKishon Vijay Abraham I  assigned-clock-parents:
62b7132285STomi Valkeinen    minItems: 1
63b7132285STomi Valkeinen    maxItems: 2
64b7132285STomi Valkeinen
65b7132285STomi Valkeinen  assigned-clock-rates:
66b7132285STomi Valkeinen    minItems: 1
67ad044f01SKishon Vijay Abraham I    maxItems: 2
68ad044f01SKishon Vijay Abraham I
696385cbe9SRoger Quadros  typec-dir-gpios:
706385cbe9SRoger Quadros    maxItems: 1
716385cbe9SRoger Quadros    description:
726385cbe9SRoger Quadros      GPIO to signal Type-C cable orientation for lane swap.
736385cbe9SRoger Quadros      If GPIO is active, lane 0 and lane 1 of SERDES will be swapped to
746385cbe9SRoger Quadros      achieve the funtionality of an external type-C plug flip mux.
756385cbe9SRoger Quadros
766385cbe9SRoger Quadros  typec-dir-debounce-ms:
776385cbe9SRoger Quadros    minimum: 100
786385cbe9SRoger Quadros    maximum: 1000
796385cbe9SRoger Quadros    default: 100
806385cbe9SRoger Quadros    description:
816385cbe9SRoger Quadros      Number of milliseconds to wait before sampling typec-dir-gpio.
826385cbe9SRoger Quadros      If not specified, the default debounce of 100ms will be used.
836385cbe9SRoger Quadros      Type-C spec states minimum CC pin debounce of 100 ms and maximum
846385cbe9SRoger Quadros      of 200 ms. However, some solutions might need more than 200 ms.
856385cbe9SRoger Quadros
86f88321a3SRob Herring  refclk-dig:
87f88321a3SRob Herring    type: object
88c77c1853SRob Herring    additionalProperties: false
89f88321a3SRob Herring    description: |
90f88321a3SRob Herring      WIZ node should have subnode for refclk_dig to select the reference
91f88321a3SRob Herring      clock source for the reference clock used in the PHY and PMA digital
92f88321a3SRob Herring      logic.
931aa54982SRoger Quadros    deprecated: true
94f88321a3SRob Herring    properties:
95f88321a3SRob Herring      clocks:
96f88321a3SRob Herring        minItems: 2
97f88321a3SRob Herring        maxItems: 4
98f88321a3SRob Herring        description: Phandle to two (Torrent) or four (Sierra) clock nodes representing
99f88321a3SRob Herring          the inputs to refclk_dig
100f88321a3SRob Herring
101f88321a3SRob Herring      "#clock-cells":
102f88321a3SRob Herring        const: 0
103f88321a3SRob Herring
104f88321a3SRob Herring      assigned-clocks:
105f88321a3SRob Herring        maxItems: 1
106f88321a3SRob Herring
107f88321a3SRob Herring      assigned-clock-parents:
108f88321a3SRob Herring        maxItems: 1
109f88321a3SRob Herring
110f88321a3SRob Herring    required:
111f88321a3SRob Herring      - clocks
112f88321a3SRob Herring      - "#clock-cells"
113f88321a3SRob Herring      - assigned-clocks
114f88321a3SRob Herring      - assigned-clock-parents
115f88321a3SRob Herring
116d5f2e747SRoger Quadros  ti,scm:
117d5f2e747SRoger Quadros    $ref: /schemas/types.yaml#/definitions/phandle
118d5f2e747SRoger Quadros    description: |
119d5f2e747SRoger Quadros      phandle to System Control Module for syscon regmap access.
120d5f2e747SRoger Quadros
121ad044f01SKishon Vijay Abraham IpatternProperties:
122ad044f01SKishon Vijay Abraham I  "^pll[0|1]-refclk$":
123ad044f01SKishon Vijay Abraham I    type: object
124c77c1853SRob Herring    additionalProperties: false
125ad044f01SKishon Vijay Abraham I    description: |
126ad044f01SKishon Vijay Abraham I      WIZ node should have subnodes for each of the PLLs present in
127ad044f01SKishon Vijay Abraham I      the SERDES.
1281aa54982SRoger Quadros    deprecated: true
129ad044f01SKishon Vijay Abraham I    properties:
130ad044f01SKishon Vijay Abraham I      clocks:
131ad044f01SKishon Vijay Abraham I        maxItems: 2
132ad044f01SKishon Vijay Abraham I        description: Phandle to clock nodes representing the two inputs to PLL.
133ad044f01SKishon Vijay Abraham I
134ad044f01SKishon Vijay Abraham I      "#clock-cells":
135ad044f01SKishon Vijay Abraham I        const: 0
136ad044f01SKishon Vijay Abraham I
137ad044f01SKishon Vijay Abraham I      assigned-clocks:
138ad044f01SKishon Vijay Abraham I        maxItems: 1
139ad044f01SKishon Vijay Abraham I
140ad044f01SKishon Vijay Abraham I      assigned-clock-parents:
141ad044f01SKishon Vijay Abraham I        maxItems: 1
142ad044f01SKishon Vijay Abraham I
143ad044f01SKishon Vijay Abraham I    required:
144ad044f01SKishon Vijay Abraham I      - clocks
145ad044f01SKishon Vijay Abraham I      - "#clock-cells"
146ad044f01SKishon Vijay Abraham I      - assigned-clocks
147ad044f01SKishon Vijay Abraham I      - assigned-clock-parents
148ad044f01SKishon Vijay Abraham I
149ad044f01SKishon Vijay Abraham I  "^cmn-refclk1?-dig-div$":
150ad044f01SKishon Vijay Abraham I    type: object
151c77c1853SRob Herring    additionalProperties: false
152ad044f01SKishon Vijay Abraham I    description:
153ad044f01SKishon Vijay Abraham I      WIZ node should have subnodes for each of the PMA common refclock
154ad044f01SKishon Vijay Abraham I      provided by the SERDES.
1551aa54982SRoger Quadros    deprecated: true
156ad044f01SKishon Vijay Abraham I    properties:
157ad044f01SKishon Vijay Abraham I      clocks:
158ad044f01SKishon Vijay Abraham I        maxItems: 1
159ad044f01SKishon Vijay Abraham I        description: Phandle to the clock node representing the input to the
160ad044f01SKishon Vijay Abraham I          divider clock.
161ad044f01SKishon Vijay Abraham I
162ad044f01SKishon Vijay Abraham I      "#clock-cells":
163ad044f01SKishon Vijay Abraham I        const: 0
164ad044f01SKishon Vijay Abraham I
165ad044f01SKishon Vijay Abraham I    required:
166ad044f01SKishon Vijay Abraham I      - clocks
167ad044f01SKishon Vijay Abraham I      - "#clock-cells"
168ad044f01SKishon Vijay Abraham I
169ad044f01SKishon Vijay Abraham I  "^serdes@[0-9a-f]+$":
170ad044f01SKishon Vijay Abraham I    type: object
171ad044f01SKishon Vijay Abraham I    description: |
172ad044f01SKishon Vijay Abraham I      WIZ node should have '1' subnode for the SERDES. It could be either
173ad044f01SKishon Vijay Abraham I      Sierra SERDES or Torrent SERDES. Sierra SERDES should follow the
174ad044f01SKishon Vijay Abraham I      bindings specified in
17534168172SMauro Carvalho Chehab      Documentation/devicetree/bindings/phy/phy-cadence-sierra.yaml
176ad044f01SKishon Vijay Abraham I      Torrent SERDES should follow the bindings specified in
177b8a1707fSMauro Carvalho Chehab      Documentation/devicetree/bindings/phy/phy-cadence-torrent.yaml
178ad044f01SKishon Vijay Abraham I
179ad044f01SKishon Vijay Abraham Irequired:
180ad044f01SKishon Vijay Abraham I  - compatible
181ad044f01SKishon Vijay Abraham I  - power-domains
182ad044f01SKishon Vijay Abraham I  - clocks
183ad044f01SKishon Vijay Abraham I  - clock-names
184ad044f01SKishon Vijay Abraham I  - num-lanes
185ad044f01SKishon Vijay Abraham I  - "#address-cells"
186ad044f01SKishon Vijay Abraham I  - "#size-cells"
187ad044f01SKishon Vijay Abraham I  - "#reset-cells"
188ad044f01SKishon Vijay Abraham I  - ranges
189ad044f01SKishon Vijay Abraham I
190d5f2e747SRoger QuadrosallOf:
191d5f2e747SRoger Quadros  - if:
192d5f2e747SRoger Quadros      properties:
193d5f2e747SRoger Quadros        compatible:
194d5f2e747SRoger Quadros          contains:
195d5f2e747SRoger Quadros            const: ti,j7200-wiz-10g
196d5f2e747SRoger Quadros    then:
197d5f2e747SRoger Quadros      required:
198d5f2e747SRoger Quadros        - ti,scm
199d5f2e747SRoger Quadros
2007f464532SRob HerringadditionalProperties: false
2017f464532SRob Herring
202ad044f01SKishon Vijay Abraham Iexamples:
203ad044f01SKishon Vijay Abraham I  - |
204ad044f01SKishon Vijay Abraham I    #include <dt-bindings/soc/ti,sci_pm_domain.h>
205ad044f01SKishon Vijay Abraham I
206ad044f01SKishon Vijay Abraham I    wiz@5000000 {
207ad044f01SKishon Vijay Abraham I           compatible = "ti,j721e-wiz-16g";
208ad044f01SKishon Vijay Abraham I           #address-cells = <1>;
209ad044f01SKishon Vijay Abraham I           #size-cells = <1>;
210ad044f01SKishon Vijay Abraham I           power-domains = <&k3_pds 292 TI_SCI_PD_EXCLUSIVE>;
211ad044f01SKishon Vijay Abraham I           clocks = <&k3_clks 292 5>, <&k3_clks 292 11>, <&dummy_cmn_refclk>;
212ad044f01SKishon Vijay Abraham I           clock-names = "fck", "core_ref_clk", "ext_ref_clk";
213ad044f01SKishon Vijay Abraham I           assigned-clocks = <&k3_clks 292 11>, <&k3_clks 292 0>;
214ad044f01SKishon Vijay Abraham I           assigned-clock-parents = <&k3_clks 292 15>, <&k3_clks 292 4>;
215ad044f01SKishon Vijay Abraham I           num-lanes = <2>;
216ad044f01SKishon Vijay Abraham I           #reset-cells = <1>;
217ad044f01SKishon Vijay Abraham I           ranges = <0x5000000 0x5000000 0x10000>;
218ad044f01SKishon Vijay Abraham I
219ad044f01SKishon Vijay Abraham I           pll0-refclk {
220ad044f01SKishon Vijay Abraham I                  clocks = <&k3_clks 293 13>, <&dummy_cmn_refclk>;
221ad044f01SKishon Vijay Abraham I                  #clock-cells = <0>;
222ad044f01SKishon Vijay Abraham I                  assigned-clocks = <&wiz1_pll0_refclk>;
223ad044f01SKishon Vijay Abraham I                  assigned-clock-parents = <&k3_clks 293 13>;
224ad044f01SKishon Vijay Abraham I           };
225ad044f01SKishon Vijay Abraham I
226ad044f01SKishon Vijay Abraham I           pll1-refclk {
227ad044f01SKishon Vijay Abraham I                  clocks = <&k3_clks 293 0>, <&dummy_cmn_refclk1>;
228ad044f01SKishon Vijay Abraham I                  #clock-cells = <0>;
229ad044f01SKishon Vijay Abraham I                  assigned-clocks = <&wiz1_pll1_refclk>;
230ad044f01SKishon Vijay Abraham I                  assigned-clock-parents = <&k3_clks 293 0>;
231ad044f01SKishon Vijay Abraham I           };
232ad044f01SKishon Vijay Abraham I
233ad044f01SKishon Vijay Abraham I           cmn-refclk-dig-div {
234ad044f01SKishon Vijay Abraham I                  clocks = <&wiz1_refclk_dig>;
235ad044f01SKishon Vijay Abraham I                  #clock-cells = <0>;
236ad044f01SKishon Vijay Abraham I           };
237ad044f01SKishon Vijay Abraham I
238ad044f01SKishon Vijay Abraham I           cmn-refclk1-dig-div {
239ad044f01SKishon Vijay Abraham I                  clocks = <&wiz1_pll1_refclk>;
240ad044f01SKishon Vijay Abraham I                  #clock-cells = <0>;
241ad044f01SKishon Vijay Abraham I           };
242ad044f01SKishon Vijay Abraham I
243ad044f01SKishon Vijay Abraham I           refclk-dig {
244f516fb70SRob Herring                  clocks = <&k3_clks 292 11>, <&k3_clks 292 0>,
245f516fb70SRob Herring                          <&dummy_cmn_refclk>, <&dummy_cmn_refclk1>;
246ad044f01SKishon Vijay Abraham I                  #clock-cells = <0>;
247ad044f01SKishon Vijay Abraham I                  assigned-clocks = <&wiz0_refclk_dig>;
248ad044f01SKishon Vijay Abraham I                  assigned-clock-parents = <&k3_clks 292 11>;
249ad044f01SKishon Vijay Abraham I           };
250ad044f01SKishon Vijay Abraham I
251ad044f01SKishon Vijay Abraham I           serdes@5000000 {
25228ffe8bfSRob Herring                  compatible = "ti,sierra-phy-t0";
253ad044f01SKishon Vijay Abraham I                  reg-names = "serdes";
254ad044f01SKishon Vijay Abraham I                  reg = <0x5000000 0x10000>;
255ad044f01SKishon Vijay Abraham I                  #address-cells = <1>;
256ad044f01SKishon Vijay Abraham I                  #size-cells = <0>;
257ad044f01SKishon Vijay Abraham I                  resets = <&serdes_wiz0 0>;
258ad044f01SKishon Vijay Abraham I                  reset-names = "sierra_reset";
259ad044f01SKishon Vijay Abraham I                  clocks = <&wiz0_cmn_refclk_dig_div>, <&wiz0_cmn_refclk1_dig_div>;
260ad044f01SKishon Vijay Abraham I                  clock-names = "cmn_refclk_dig_div", "cmn_refclk1_dig_div";
261ad044f01SKishon Vijay Abraham I           };
262ad044f01SKishon Vijay Abraham I    };
263