1*354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2*354d7675SEmmanuel Vadot%YAML 1.2 3*354d7675SEmmanuel Vadot--- 4*354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/phy/ti,phy-am654-serdes.yaml# 5*354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*354d7675SEmmanuel Vadot 7*354d7675SEmmanuel Vadottitle: TI AM654 SERDES binding 8*354d7675SEmmanuel Vadot 9*354d7675SEmmanuel Vadotdescription: 10*354d7675SEmmanuel Vadot This binding describes the TI AM654 SERDES. AM654 SERDES can be configured 11*354d7675SEmmanuel Vadot to be used with either PCIe or USB or SGMII. 12*354d7675SEmmanuel Vadot 13*354d7675SEmmanuel Vadotmaintainers: 14*354d7675SEmmanuel Vadot - Kishon Vijay Abraham I <kishon@ti.com> 15*354d7675SEmmanuel Vadot 16*354d7675SEmmanuel Vadotproperties: 17*354d7675SEmmanuel Vadot compatible: 18*354d7675SEmmanuel Vadot enum: 19*354d7675SEmmanuel Vadot - ti,phy-am654-serdes 20*354d7675SEmmanuel Vadot 21*354d7675SEmmanuel Vadot reg: 22*354d7675SEmmanuel Vadot maxItems: 1 23*354d7675SEmmanuel Vadot 24*354d7675SEmmanuel Vadot reg-names: 25*354d7675SEmmanuel Vadot items: 26*354d7675SEmmanuel Vadot - const: serdes 27*354d7675SEmmanuel Vadot 28*354d7675SEmmanuel Vadot power-domains: 29*354d7675SEmmanuel Vadot maxItems: 1 30*354d7675SEmmanuel Vadot 31*354d7675SEmmanuel Vadot clocks: 32*354d7675SEmmanuel Vadot maxItems: 3 33*354d7675SEmmanuel Vadot description: 34*354d7675SEmmanuel Vadot Three input clocks referring to left input reference clock, refclk and right input reference 35*354d7675SEmmanuel Vadot clock. 36*354d7675SEmmanuel Vadot 37*354d7675SEmmanuel Vadot assigned-clocks: 38*354d7675SEmmanuel Vadot $ref: "/schemas/types.yaml#/definitions/phandle-array" 39*354d7675SEmmanuel Vadot assigned-clock-parents: 40*354d7675SEmmanuel Vadot $ref: "/schemas/types.yaml#/definitions/phandle-array" 41*354d7675SEmmanuel Vadot 42*354d7675SEmmanuel Vadot '#phy-cells': 43*354d7675SEmmanuel Vadot const: 2 44*354d7675SEmmanuel Vadot description: 45*354d7675SEmmanuel Vadot The 1st cell corresponds to the phy type (should be one of the types specified in 46*354d7675SEmmanuel Vadot include/dt-bindings/phy/phy.h) and the 2nd cell should be the serdes lane function. 47*354d7675SEmmanuel Vadot 48*354d7675SEmmanuel Vadot ti,serdes-clk: 49*354d7675SEmmanuel Vadot description: Phandle to the SYSCON entry required for configuring SERDES clock selection. 50*354d7675SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 51*354d7675SEmmanuel Vadot 52*354d7675SEmmanuel Vadot '#clock-cells': 53*354d7675SEmmanuel Vadot const: 1 54*354d7675SEmmanuel Vadot 55*354d7675SEmmanuel Vadot mux-controls: 56*354d7675SEmmanuel Vadot maxItems: 1 57*354d7675SEmmanuel Vadot description: Phandle to the SYSCON entry required for configuring SERDES lane function. 58*354d7675SEmmanuel Vadot 59*354d7675SEmmanuel Vadot clock-output-names: 60*354d7675SEmmanuel Vadot oneOf: 61*354d7675SEmmanuel Vadot - description: Clock output names for SERDES 0 62*354d7675SEmmanuel Vadot items: 63*354d7675SEmmanuel Vadot - const: serdes0_cmu_refclk 64*354d7675SEmmanuel Vadot - const: serdes0_lo_refclk 65*354d7675SEmmanuel Vadot - const: serdes0_ro_refclk 66*354d7675SEmmanuel Vadot - description: Clock output names for SERDES 1 67*354d7675SEmmanuel Vadot items: 68*354d7675SEmmanuel Vadot - const: serdes1_cmu_refclk 69*354d7675SEmmanuel Vadot - const: serdes1_lo_refclk 70*354d7675SEmmanuel Vadot - const: serdes1_ro_refclk 71*354d7675SEmmanuel Vadot 72*354d7675SEmmanuel Vadotrequired: 73*354d7675SEmmanuel Vadot - compatible 74*354d7675SEmmanuel Vadot - reg 75*354d7675SEmmanuel Vadot - power-domains 76*354d7675SEmmanuel Vadot - clocks 77*354d7675SEmmanuel Vadot - assigned-clocks 78*354d7675SEmmanuel Vadot - assigned-clock-parents 79*354d7675SEmmanuel Vadot - ti,serdes-clk 80*354d7675SEmmanuel Vadot - mux-controls 81*354d7675SEmmanuel Vadot - clock-output-names 82*354d7675SEmmanuel Vadot 83*354d7675SEmmanuel VadotadditionalProperties: false 84*354d7675SEmmanuel Vadot 85*354d7675SEmmanuel Vadotexamples: 86*354d7675SEmmanuel Vadot - | 87*354d7675SEmmanuel Vadot #include <dt-bindings/phy/phy-am654-serdes.h> 88*354d7675SEmmanuel Vadot 89*354d7675SEmmanuel Vadot serdes0: serdes@900000 { 90*354d7675SEmmanuel Vadot compatible = "ti,phy-am654-serdes"; 91*354d7675SEmmanuel Vadot reg = <0x900000 0x2000>; 92*354d7675SEmmanuel Vadot reg-names = "serdes"; 93*354d7675SEmmanuel Vadot #phy-cells = <2>; 94*354d7675SEmmanuel Vadot power-domains = <&k3_pds 153>; 95*354d7675SEmmanuel Vadot clocks = <&k3_clks 153 4>, <&k3_clks 153 1>, 96*354d7675SEmmanuel Vadot <&serdes1 AM654_SERDES_LO_REFCLK>; 97*354d7675SEmmanuel Vadot clock-output-names = "serdes0_cmu_refclk", "serdes0_lo_refclk", "serdes0_ro_refclk"; 98*354d7675SEmmanuel Vadot assigned-clocks = <&k3_clks 153 4>, <&serdes0 AM654_SERDES_CMU_REFCLK>; 99*354d7675SEmmanuel Vadot assigned-clock-parents = <&k3_clks 153 8>, <&k3_clks 153 4>; 100*354d7675SEmmanuel Vadot ti,serdes-clk = <&serdes0_clk>; 101*354d7675SEmmanuel Vadot mux-controls = <&serdes_mux 0>; 102*354d7675SEmmanuel Vadot #clock-cells = <1>; 103*354d7675SEmmanuel Vadot }; 104