1*4882a593SmuzhiyunCadence Sierra PHY 2*4882a593Smuzhiyun----------------------- 3*4882a593Smuzhiyun 4*4882a593SmuzhiyunRequired properties: 5*4882a593Smuzhiyun- compatible: Must be "cdns,sierra-phy-t0" for Sierra in Cadence platform 6*4882a593Smuzhiyun Must be "ti,sierra-phy-t0" for Sierra in TI's J721E SoC. 7*4882a593Smuzhiyun- resets: Must contain an entry for each in reset-names. 8*4882a593Smuzhiyun See ../reset/reset.txt for details. 9*4882a593Smuzhiyun- reset-names: Must include "sierra_reset" and "sierra_apb". 10*4882a593Smuzhiyun "sierra_reset" must control the reset line to the PHY. 11*4882a593Smuzhiyun "sierra_apb" must control the reset line to the APB PHY 12*4882a593Smuzhiyun interface ("sierra_apb" is optional). 13*4882a593Smuzhiyun- reg: register range for the PHY. 14*4882a593Smuzhiyun- #address-cells: Must be 1 15*4882a593Smuzhiyun- #size-cells: Must be 0 16*4882a593Smuzhiyun 17*4882a593SmuzhiyunOptional properties: 18*4882a593Smuzhiyun- clocks: Must contain an entry in clock-names. 19*4882a593Smuzhiyun See ../clocks/clock-bindings.txt for details. 20*4882a593Smuzhiyun- clock-names: Must contain "cmn_refclk_dig_div" and 21*4882a593Smuzhiyun "cmn_refclk1_dig_div" for configuring the frequency of 22*4882a593Smuzhiyun the clock to the lanes. "phy_clk" is deprecated. 23*4882a593Smuzhiyun- cdns,autoconf: A boolean property whose presence indicates that the 24*4882a593Smuzhiyun PHY registers will be configured by hardware. If not 25*4882a593Smuzhiyun present, all sub-node optional properties must be 26*4882a593Smuzhiyun provided. 27*4882a593Smuzhiyun 28*4882a593SmuzhiyunSub-nodes: 29*4882a593Smuzhiyun Each group of PHY lanes with a single master lane should be represented as 30*4882a593Smuzhiyun a sub-node. Note that the actual configuration of each lane is determined by 31*4882a593Smuzhiyun hardware strapping, and must match the configuration specified here. 32*4882a593Smuzhiyun 33*4882a593SmuzhiyunSub-node required properties: 34*4882a593Smuzhiyun- #phy-cells: Generic PHY binding; must be 0. 35*4882a593Smuzhiyun- reg: The master lane number. This is the lowest numbered lane 36*4882a593Smuzhiyun in the lane group. 37*4882a593Smuzhiyun- resets: Must contain one entry which controls the reset line for the 38*4882a593Smuzhiyun master lane of the sub-node. 39*4882a593Smuzhiyun See ../reset/reset.txt for details. 40*4882a593Smuzhiyun 41*4882a593SmuzhiyunSub-node optional properties: 42*4882a593Smuzhiyun- cdns,num-lanes: Number of lanes in this group. From 1 to 4. The 43*4882a593Smuzhiyun group is made up of consecutive lanes. 44*4882a593Smuzhiyun- cdns,phy-type: Can be PHY_TYPE_PCIE or PHY_TYPE_USB3, depending on 45*4882a593Smuzhiyun configuration of lanes. 46*4882a593Smuzhiyun 47*4882a593SmuzhiyunExample: 48*4882a593Smuzhiyun pcie_phy4: pcie-phy@fd240000 { 49*4882a593Smuzhiyun compatible = "cdns,sierra-phy-t0"; 50*4882a593Smuzhiyun reg = <0x0 0xfd240000 0x0 0x40000>; 51*4882a593Smuzhiyun resets = <&phyrst 0>, <&phyrst 1>; 52*4882a593Smuzhiyun reset-names = "sierra_reset", "sierra_apb"; 53*4882a593Smuzhiyun clocks = <&phyclock>; 54*4882a593Smuzhiyun clock-names = "phy_clk"; 55*4882a593Smuzhiyun #address-cells = <1>; 56*4882a593Smuzhiyun #size-cells = <0>; 57*4882a593Smuzhiyun pcie0_phy0: pcie-phy@0 { 58*4882a593Smuzhiyun reg = <0>; 59*4882a593Smuzhiyun resets = <&phyrst 2>; 60*4882a593Smuzhiyun cdns,num-lanes = <2>; 61*4882a593Smuzhiyun #phy-cells = <0>; 62*4882a593Smuzhiyun cdns,phy-type = <PHY_TYPE_PCIE>; 63*4882a593Smuzhiyun }; 64*4882a593Smuzhiyun pcie0_phy1: pcie-phy@2 { 65*4882a593Smuzhiyun reg = <2>; 66*4882a593Smuzhiyun resets = <&phyrst 4>; 67*4882a593Smuzhiyun cdns,num-lanes = <1>; 68*4882a593Smuzhiyun #phy-cells = <0>; 69*4882a593Smuzhiyun cdns,phy-type = <PHY_TYPE_PCIE>; 70*4882a593Smuzhiyun }; 71