xref: /freebsd/sys/contrib/device-tree/Bindings/net/motorcomm,yt8xxx.yaml (revision cb7aa33ac6cd46a5434798e50363136e64f3ae98)
1*cb7aa33aSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*cb7aa33aSEmmanuel Vadot%YAML 1.2
3*cb7aa33aSEmmanuel Vadot---
4*cb7aa33aSEmmanuel Vadot$id: http://devicetree.org/schemas/net/motorcomm,yt8xxx.yaml#
5*cb7aa33aSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*cb7aa33aSEmmanuel Vadot
7*cb7aa33aSEmmanuel Vadottitle: MotorComm yt8xxx Ethernet PHY
8*cb7aa33aSEmmanuel Vadot
9*cb7aa33aSEmmanuel Vadotmaintainers:
10*cb7aa33aSEmmanuel Vadot  - Frank Sae <frank.sae@motor-comm.com>
11*cb7aa33aSEmmanuel Vadot
12*cb7aa33aSEmmanuel VadotallOf:
13*cb7aa33aSEmmanuel Vadot  - $ref: ethernet-phy.yaml#
14*cb7aa33aSEmmanuel Vadot
15*cb7aa33aSEmmanuel Vadotproperties:
16*cb7aa33aSEmmanuel Vadot  compatible:
17*cb7aa33aSEmmanuel Vadot    enum:
18*cb7aa33aSEmmanuel Vadot      - ethernet-phy-id4f51.e91a
19*cb7aa33aSEmmanuel Vadot      - ethernet-phy-id4f51.e91b
20*cb7aa33aSEmmanuel Vadot
21*cb7aa33aSEmmanuel Vadot  rx-internal-delay-ps:
22*cb7aa33aSEmmanuel Vadot    description: |
23*cb7aa33aSEmmanuel Vadot      RGMII RX Clock Delay used only when PHY operates in RGMII mode with
24*cb7aa33aSEmmanuel Vadot      internal delay (phy-mode is 'rgmii-id' or 'rgmii-rxid') in pico-seconds.
25*cb7aa33aSEmmanuel Vadot    enum: [ 0, 150, 300, 450, 600, 750, 900, 1050, 1200, 1350, 1500, 1650,
26*cb7aa33aSEmmanuel Vadot            1800, 1900, 1950, 2050, 2100, 2200, 2250, 2350, 2500, 2650, 2800,
27*cb7aa33aSEmmanuel Vadot            2950, 3100, 3250, 3400, 3550, 3700, 3850, 4000, 4150 ]
28*cb7aa33aSEmmanuel Vadot    default: 1950
29*cb7aa33aSEmmanuel Vadot
30*cb7aa33aSEmmanuel Vadot  tx-internal-delay-ps:
31*cb7aa33aSEmmanuel Vadot    description: |
32*cb7aa33aSEmmanuel Vadot      RGMII TX Clock Delay used only when PHY operates in RGMII mode with
33*cb7aa33aSEmmanuel Vadot      internal delay (phy-mode is 'rgmii-id' or 'rgmii-txid') in pico-seconds.
34*cb7aa33aSEmmanuel Vadot    enum: [ 0, 150, 300, 450, 600, 750, 900, 1050, 1200, 1350, 1500, 1650, 1800,
35*cb7aa33aSEmmanuel Vadot            1950, 2100, 2250 ]
36*cb7aa33aSEmmanuel Vadot    default: 1950
37*cb7aa33aSEmmanuel Vadot
38*cb7aa33aSEmmanuel Vadot  motorcomm,clk-out-frequency-hz:
39*cb7aa33aSEmmanuel Vadot    description: clock output on clock output pin.
40*cb7aa33aSEmmanuel Vadot    enum: [0, 25000000, 125000000]
41*cb7aa33aSEmmanuel Vadot    default: 0
42*cb7aa33aSEmmanuel Vadot
43*cb7aa33aSEmmanuel Vadot  motorcomm,keep-pll-enabled:
44*cb7aa33aSEmmanuel Vadot    description: |
45*cb7aa33aSEmmanuel Vadot      If set, keep the PLL enabled even if there is no link. Useful if you
46*cb7aa33aSEmmanuel Vadot      want to use the clock output without an ethernet link.
47*cb7aa33aSEmmanuel Vadot    type: boolean
48*cb7aa33aSEmmanuel Vadot
49*cb7aa33aSEmmanuel Vadot  motorcomm,auto-sleep-disabled:
50*cb7aa33aSEmmanuel Vadot    description: |
51*cb7aa33aSEmmanuel Vadot      If set, PHY will not enter sleep mode and close AFE after unplug cable
52*cb7aa33aSEmmanuel Vadot      for a timer.
53*cb7aa33aSEmmanuel Vadot    type: boolean
54*cb7aa33aSEmmanuel Vadot
55*cb7aa33aSEmmanuel Vadot  motorcomm,tx-clk-adj-enabled:
56*cb7aa33aSEmmanuel Vadot    description: |
57*cb7aa33aSEmmanuel Vadot      This configuration is mainly to adapt to VF2 with JH7110 SoC.
58*cb7aa33aSEmmanuel Vadot      Useful if you want to use tx-clk-xxxx-inverted to adj the delay of tx clk.
59*cb7aa33aSEmmanuel Vadot    type: boolean
60*cb7aa33aSEmmanuel Vadot
61*cb7aa33aSEmmanuel Vadot  motorcomm,tx-clk-10-inverted:
62*cb7aa33aSEmmanuel Vadot    description: |
63*cb7aa33aSEmmanuel Vadot      Use original or inverted RGMII Transmit PHY Clock to drive the RGMII
64*cb7aa33aSEmmanuel Vadot      Transmit PHY Clock delay train configuration when speed is 10Mbps.
65*cb7aa33aSEmmanuel Vadot    type: boolean
66*cb7aa33aSEmmanuel Vadot
67*cb7aa33aSEmmanuel Vadot  motorcomm,tx-clk-100-inverted:
68*cb7aa33aSEmmanuel Vadot    description: |
69*cb7aa33aSEmmanuel Vadot      Use original or inverted RGMII Transmit PHY Clock to drive the RGMII
70*cb7aa33aSEmmanuel Vadot      Transmit PHY Clock delay train configuration when speed is 100Mbps.
71*cb7aa33aSEmmanuel Vadot    type: boolean
72*cb7aa33aSEmmanuel Vadot
73*cb7aa33aSEmmanuel Vadot  motorcomm,tx-clk-1000-inverted:
74*cb7aa33aSEmmanuel Vadot    description: |
75*cb7aa33aSEmmanuel Vadot      Use original or inverted RGMII Transmit PHY Clock to drive the RGMII
76*cb7aa33aSEmmanuel Vadot      Transmit PHY Clock delay train configuration when speed is 1000Mbps.
77*cb7aa33aSEmmanuel Vadot    type: boolean
78*cb7aa33aSEmmanuel Vadot
79*cb7aa33aSEmmanuel VadotunevaluatedProperties: false
80*cb7aa33aSEmmanuel Vadot
81*cb7aa33aSEmmanuel Vadotexamples:
82*cb7aa33aSEmmanuel Vadot  - |
83*cb7aa33aSEmmanuel Vadot    mdio {
84*cb7aa33aSEmmanuel Vadot        #address-cells = <1>;
85*cb7aa33aSEmmanuel Vadot        #size-cells = <0>;
86*cb7aa33aSEmmanuel Vadot        phy-mode = "rgmii-id";
87*cb7aa33aSEmmanuel Vadot        ethernet-phy@4 {
88*cb7aa33aSEmmanuel Vadot            /*  Only needed to make DT lint tools work. Do not copy/paste
89*cb7aa33aSEmmanuel Vadot             *  into real DTS files.
90*cb7aa33aSEmmanuel Vadot             */
91*cb7aa33aSEmmanuel Vadot            compatible = "ethernet-phy-id4f51.e91a";
92*cb7aa33aSEmmanuel Vadot
93*cb7aa33aSEmmanuel Vadot            reg = <4>;
94*cb7aa33aSEmmanuel Vadot            rx-internal-delay-ps = <2100>;
95*cb7aa33aSEmmanuel Vadot            tx-internal-delay-ps = <150>;
96*cb7aa33aSEmmanuel Vadot            motorcomm,clk-out-frequency-hz = <0>;
97*cb7aa33aSEmmanuel Vadot            motorcomm,keep-pll-enabled;
98*cb7aa33aSEmmanuel Vadot            motorcomm,auto-sleep-disabled;
99*cb7aa33aSEmmanuel Vadot        };
100*cb7aa33aSEmmanuel Vadot    };
101*cb7aa33aSEmmanuel Vadot  - |
102*cb7aa33aSEmmanuel Vadot    mdio {
103*cb7aa33aSEmmanuel Vadot        #address-cells = <1>;
104*cb7aa33aSEmmanuel Vadot        #size-cells = <0>;
105*cb7aa33aSEmmanuel Vadot        phy-mode = "rgmii";
106*cb7aa33aSEmmanuel Vadot        ethernet-phy@5 {
107*cb7aa33aSEmmanuel Vadot            /*  Only needed to make DT lint tools work. Do not copy/paste
108*cb7aa33aSEmmanuel Vadot             *  into real DTS files.
109*cb7aa33aSEmmanuel Vadot             */
110*cb7aa33aSEmmanuel Vadot            compatible = "ethernet-phy-id4f51.e91a";
111*cb7aa33aSEmmanuel Vadot
112*cb7aa33aSEmmanuel Vadot            reg = <5>;
113*cb7aa33aSEmmanuel Vadot            motorcomm,clk-out-frequency-hz = <125000000>;
114*cb7aa33aSEmmanuel Vadot            motorcomm,keep-pll-enabled;
115*cb7aa33aSEmmanuel Vadot            motorcomm,auto-sleep-disabled;
116*cb7aa33aSEmmanuel Vadot        };
117*cb7aa33aSEmmanuel Vadot    };
118