~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/devicetree/bindings/phy/ti,phy-j721e-wiz.yaml

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

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

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php