1354d7675SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2354d7675SEmmanuel Vadot%YAML 1.2 3354d7675SEmmanuel Vadot--- 4354d7675SEmmanuel Vadot$id: http://devicetree.org/schemas/phy/ti,phy-am654-serdes.yaml# 5354d7675SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6354d7675SEmmanuel Vadot 7*8bab661aSEmmanuel Vadottitle: TI AM654 SERDES 8354d7675SEmmanuel Vadot 9354d7675SEmmanuel Vadotdescription: 10354d7675SEmmanuel Vadot This binding describes the TI AM654 SERDES. AM654 SERDES can be configured 11354d7675SEmmanuel Vadot to be used with either PCIe or USB or SGMII. 12354d7675SEmmanuel Vadot 13354d7675SEmmanuel Vadotmaintainers: 14354d7675SEmmanuel Vadot - Kishon Vijay Abraham I <kishon@ti.com> 15354d7675SEmmanuel Vadot 16354d7675SEmmanuel Vadotproperties: 17354d7675SEmmanuel Vadot compatible: 18354d7675SEmmanuel Vadot enum: 19354d7675SEmmanuel Vadot - ti,phy-am654-serdes 20354d7675SEmmanuel Vadot 21354d7675SEmmanuel Vadot reg: 22354d7675SEmmanuel Vadot maxItems: 1 23354d7675SEmmanuel Vadot 24354d7675SEmmanuel Vadot reg-names: 25354d7675SEmmanuel Vadot items: 26354d7675SEmmanuel Vadot - const: serdes 27354d7675SEmmanuel Vadot 28354d7675SEmmanuel Vadot power-domains: 29354d7675SEmmanuel Vadot maxItems: 1 30354d7675SEmmanuel Vadot 31354d7675SEmmanuel Vadot clocks: 32354d7675SEmmanuel Vadot maxItems: 3 33354d7675SEmmanuel Vadot description: 34354d7675SEmmanuel Vadot Three input clocks referring to left input reference clock, refclk and right input reference 35354d7675SEmmanuel Vadot clock. 36354d7675SEmmanuel Vadot 37354d7675SEmmanuel Vadot '#phy-cells': 38354d7675SEmmanuel Vadot const: 2 39354d7675SEmmanuel Vadot description: 40354d7675SEmmanuel Vadot The 1st cell corresponds to the phy type (should be one of the types specified in 41354d7675SEmmanuel Vadot include/dt-bindings/phy/phy.h) and the 2nd cell should be the serdes lane function. 42354d7675SEmmanuel Vadot 43354d7675SEmmanuel Vadot ti,serdes-clk: 44354d7675SEmmanuel Vadot description: Phandle to the SYSCON entry required for configuring SERDES clock selection. 45354d7675SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 46354d7675SEmmanuel Vadot 47354d7675SEmmanuel Vadot '#clock-cells': 48354d7675SEmmanuel Vadot const: 1 49354d7675SEmmanuel Vadot 50354d7675SEmmanuel Vadot mux-controls: 51354d7675SEmmanuel Vadot maxItems: 1 52354d7675SEmmanuel Vadot description: Phandle to the SYSCON entry required for configuring SERDES lane function. 53354d7675SEmmanuel Vadot 54354d7675SEmmanuel Vadot clock-output-names: 55354d7675SEmmanuel Vadot oneOf: 56354d7675SEmmanuel Vadot - description: Clock output names for SERDES 0 57354d7675SEmmanuel Vadot items: 58354d7675SEmmanuel Vadot - const: serdes0_cmu_refclk 59354d7675SEmmanuel Vadot - const: serdes0_lo_refclk 60354d7675SEmmanuel Vadot - const: serdes0_ro_refclk 61354d7675SEmmanuel Vadot - description: Clock output names for SERDES 1 62354d7675SEmmanuel Vadot items: 63354d7675SEmmanuel Vadot - const: serdes1_cmu_refclk 64354d7675SEmmanuel Vadot - const: serdes1_lo_refclk 65354d7675SEmmanuel Vadot - const: serdes1_ro_refclk 66354d7675SEmmanuel Vadot 67354d7675SEmmanuel Vadotrequired: 68354d7675SEmmanuel Vadot - compatible 69354d7675SEmmanuel Vadot - reg 70354d7675SEmmanuel Vadot - power-domains 71354d7675SEmmanuel Vadot - clocks 72354d7675SEmmanuel Vadot - assigned-clocks 73354d7675SEmmanuel Vadot - assigned-clock-parents 74354d7675SEmmanuel Vadot - ti,serdes-clk 75354d7675SEmmanuel Vadot - mux-controls 76354d7675SEmmanuel Vadot - clock-output-names 77354d7675SEmmanuel Vadot 78354d7675SEmmanuel VadotadditionalProperties: false 79354d7675SEmmanuel Vadot 80354d7675SEmmanuel Vadotexamples: 81354d7675SEmmanuel Vadot - | 82354d7675SEmmanuel Vadot #include <dt-bindings/phy/phy-am654-serdes.h> 83354d7675SEmmanuel Vadot 84354d7675SEmmanuel Vadot serdes0: serdes@900000 { 85354d7675SEmmanuel Vadot compatible = "ti,phy-am654-serdes"; 86354d7675SEmmanuel Vadot reg = <0x900000 0x2000>; 87354d7675SEmmanuel Vadot reg-names = "serdes"; 88354d7675SEmmanuel Vadot #phy-cells = <2>; 89354d7675SEmmanuel Vadot power-domains = <&k3_pds 153>; 90354d7675SEmmanuel Vadot clocks = <&k3_clks 153 4>, <&k3_clks 153 1>, 91354d7675SEmmanuel Vadot <&serdes1 AM654_SERDES_LO_REFCLK>; 92354d7675SEmmanuel Vadot clock-output-names = "serdes0_cmu_refclk", "serdes0_lo_refclk", "serdes0_ro_refclk"; 93354d7675SEmmanuel Vadot assigned-clocks = <&k3_clks 153 4>, <&serdes0 AM654_SERDES_CMU_REFCLK>; 94354d7675SEmmanuel Vadot assigned-clock-parents = <&k3_clks 153 8>, <&k3_clks 153 4>; 95354d7675SEmmanuel Vadot ti,serdes-clk = <&serdes0_clk>; 96354d7675SEmmanuel Vadot mux-controls = <&serdes_mux 0>; 97354d7675SEmmanuel Vadot #clock-cells = <1>; 98354d7675SEmmanuel Vadot }; 99