176707813SAlexandru Ardelean# SPDX-License-Identifier: GPL-2.0+
276707813SAlexandru Ardelean%YAML 1.2
376707813SAlexandru Ardelean---
476707813SAlexandru Ardelean$id: http://devicetree.org/schemas/net/adi,adin.yaml#
576707813SAlexandru Ardelean$schema: http://devicetree.org/meta-schemas/core.yaml#
676707813SAlexandru Ardelean
776707813SAlexandru Ardeleantitle: Analog Devices ADIN1200/ADIN1300 PHY
876707813SAlexandru Ardelean
976707813SAlexandru Ardeleanmaintainers:
10*4dc160a5SAlexandru Tachici  - Alexandru Tachici <alexandru.tachici@analog.com>
1176707813SAlexandru Ardelean
1276707813SAlexandru Ardeleandescription: |
1376707813SAlexandru Ardelean  Bindings for Analog Devices Industrial Ethernet PHYs
1476707813SAlexandru Ardelean
1576707813SAlexandru ArdeleanallOf:
1676707813SAlexandru Ardelean  - $ref: ethernet-phy.yaml#
1776707813SAlexandru Ardelean
1876707813SAlexandru Ardeleanproperties:
1976707813SAlexandru Ardelean  adi,rx-internal-delay-ps:
2076707813SAlexandru Ardelean    description: |
2176707813SAlexandru Ardelean      RGMII RX Clock Delay used only when PHY operates in RGMII mode with
2276707813SAlexandru Ardelean      internal delay (phy-mode is 'rgmii-id' or 'rgmii-rxid') in pico-seconds.
2376707813SAlexandru Ardelean    enum: [ 1600, 1800, 2000, 2200, 2400 ]
2476707813SAlexandru Ardelean    default: 2000
2576707813SAlexandru Ardelean
2676707813SAlexandru Ardelean  adi,tx-internal-delay-ps:
2776707813SAlexandru Ardelean    description: |
2876707813SAlexandru Ardelean      RGMII TX Clock Delay used only when PHY operates in RGMII mode with
2976707813SAlexandru Ardelean      internal delay (phy-mode is 'rgmii-id' or 'rgmii-txid') in pico-seconds.
3076707813SAlexandru Ardelean    enum: [ 1600, 1800, 2000, 2200, 2400 ]
3176707813SAlexandru Ardelean    default: 2000
3276707813SAlexandru Ardelean
3376707813SAlexandru Ardelean  adi,fifo-depth-bits:
3476707813SAlexandru Ardelean    description: |
3576707813SAlexandru Ardelean      When operating in RMII mode, this option configures the FIFO depth.
3676707813SAlexandru Ardelean    enum: [ 4, 8, 12, 16, 20, 24 ]
3776707813SAlexandru Ardelean    default: 8
3876707813SAlexandru Ardelean
391f77204eSJosua Mayer  adi,phy-output-clock:
406c465408SGeert Uytterhoeven    description: |
416c465408SGeert Uytterhoeven      Select clock output on GP_CLK pin. Two clocks are available:
421f77204eSJosua Mayer      A 25MHz reference and a free-running 125MHz.
431f77204eSJosua Mayer      The phy can alternatively automatically switch between the reference and
441f77204eSJosua Mayer      the 125MHz clocks based on its internal state.
451f77204eSJosua Mayer    $ref: /schemas/types.yaml#/definitions/string
461f77204eSJosua Mayer    enum:
471f77204eSJosua Mayer      - 25mhz-reference
481f77204eSJosua Mayer      - 125mhz-free-running
491f77204eSJosua Mayer      - adaptive-free-running
501f77204eSJosua Mayer
511f77204eSJosua Mayer  adi,phy-output-reference-clock:
521f77204eSJosua Mayer    description: Enable 25MHz reference clock output on CLK25_REF pin.
531f77204eSJosua Mayer    type: boolean
541f77204eSJosua Mayer
556fdc6e23SRob HerringunevaluatedProperties: false
566fdc6e23SRob Herring
5776707813SAlexandru Ardeleanexamples:
5876707813SAlexandru Ardelean  - |
5976707813SAlexandru Ardelean    ethernet {
6076707813SAlexandru Ardelean        #address-cells = <1>;
6176707813SAlexandru Ardelean        #size-cells = <0>;
6276707813SAlexandru Ardelean
6376707813SAlexandru Ardelean        phy-mode = "rgmii-id";
6476707813SAlexandru Ardelean
6576707813SAlexandru Ardelean        ethernet-phy@0 {
6676707813SAlexandru Ardelean            reg = <0>;
6776707813SAlexandru Ardelean
6876707813SAlexandru Ardelean            adi,rx-internal-delay-ps = <1800>;
6976707813SAlexandru Ardelean            adi,tx-internal-delay-ps = <2200>;
7076707813SAlexandru Ardelean        };
7176707813SAlexandru Ardelean    };
7276707813SAlexandru Ardelean  - |
7376707813SAlexandru Ardelean    ethernet {
7476707813SAlexandru Ardelean        #address-cells = <1>;
7576707813SAlexandru Ardelean        #size-cells = <0>;
7676707813SAlexandru Ardelean
7776707813SAlexandru Ardelean        phy-mode = "rmii";
7876707813SAlexandru Ardelean
7976707813SAlexandru Ardelean        ethernet-phy@1 {
8076707813SAlexandru Ardelean            reg = <1>;
8176707813SAlexandru Ardelean
8276707813SAlexandru Ardelean            adi,fifo-depth-bits = <16>;
8376707813SAlexandru Ardelean        };
8476707813SAlexandru Ardelean    };
85