18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0+ OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci# Copyright (C) 2019 Texas Instruments Incorporated
38c2ecf20Sopenharmony_ci%YAML 1.2
48c2ecf20Sopenharmony_ci---
58c2ecf20Sopenharmony_ci$id: "http://devicetree.org/schemas/net/ti,dp83869.yaml#"
68c2ecf20Sopenharmony_ci$schema: "http://devicetree.org/meta-schemas/core.yaml#"
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_cititle: TI DP83869 ethernet PHY
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_ciallOf:
118c2ecf20Sopenharmony_ci  - $ref: "ethernet-phy.yaml#"
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_cimaintainers:
148c2ecf20Sopenharmony_ci  - Dan Murphy <dmurphy@ti.com>
158c2ecf20Sopenharmony_ci
168c2ecf20Sopenharmony_cidescription: |
178c2ecf20Sopenharmony_ci  The DP83869HM device is a robust, fully-featured Gigabit (PHY) transceiver
188c2ecf20Sopenharmony_ci  with integrated PMD sublayers that supports 10BASE-Te, 100BASE-TX and
198c2ecf20Sopenharmony_ci  1000BASE-T Ethernet protocols. The DP83869 also supports 1000BASE-X and
208c2ecf20Sopenharmony_ci  100BASE-FX Fiber protocols.
218c2ecf20Sopenharmony_ci  This device interfaces to the MAC layer through Reduced GMII (RGMII) and
228c2ecf20Sopenharmony_ci  SGMII The DP83869HM supports Media Conversion in Managed mode. In this mode,
238c2ecf20Sopenharmony_ci  the DP83869HM can run 1000BASE-X-to-1000BASE-T and 100BASE-FX-to-100BASE-TX
248c2ecf20Sopenharmony_ci  conversions.  The DP83869HM can also support Bridge Conversion from RGMII to
258c2ecf20Sopenharmony_ci  SGMII and SGMII to RGMII.
268c2ecf20Sopenharmony_ci
278c2ecf20Sopenharmony_ci  Specifications about the Ethernet PHY can be found at:
288c2ecf20Sopenharmony_ci    http://www.ti.com/lit/ds/symlink/dp83869hm.pdf
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_ciproperties:
318c2ecf20Sopenharmony_ci  reg:
328c2ecf20Sopenharmony_ci    maxItems: 1
338c2ecf20Sopenharmony_ci
348c2ecf20Sopenharmony_ci  ti,min-output-impedance:
358c2ecf20Sopenharmony_ci    type: boolean
368c2ecf20Sopenharmony_ci    description: |
378c2ecf20Sopenharmony_ci       MAC Interface Impedance control to set the programmable output impedance
388c2ecf20Sopenharmony_ci       to a minimum value (35 ohms).
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_ci  ti,max-output-impedance:
418c2ecf20Sopenharmony_ci    type: boolean
428c2ecf20Sopenharmony_ci    description: |
438c2ecf20Sopenharmony_ci       MAC Interface Impedance control to set the programmable output impedance
448c2ecf20Sopenharmony_ci       to a maximum value (70 ohms).
458c2ecf20Sopenharmony_ci
468c2ecf20Sopenharmony_ci  tx-fifo-depth:
478c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#definitions/uint32
488c2ecf20Sopenharmony_ci    description: |
498c2ecf20Sopenharmony_ci       Transmitt FIFO depth see dt-bindings/net/ti-dp83869.h for values
508c2ecf20Sopenharmony_ci
518c2ecf20Sopenharmony_ci  rx-fifo-depth:
528c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#definitions/uint32
538c2ecf20Sopenharmony_ci    description: |
548c2ecf20Sopenharmony_ci       Receive FIFO depth see dt-bindings/net/ti-dp83869.h for values
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_ci  ti,clk-output-sel:
578c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#definitions/uint32
588c2ecf20Sopenharmony_ci    description: |
598c2ecf20Sopenharmony_ci       Muxing option for CLK_OUT pin see dt-bindings/net/ti-dp83869.h for values.
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ci  ti,op-mode:
628c2ecf20Sopenharmony_ci    $ref: /schemas/types.yaml#definitions/uint32
638c2ecf20Sopenharmony_ci    description: |
648c2ecf20Sopenharmony_ci       Operational mode for the PHY.  If this is not set then the operational
658c2ecf20Sopenharmony_ci       mode is set by the straps. see dt-bindings/net/ti-dp83869.h for values
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_ci  rx-internal-delay-ps:
688c2ecf20Sopenharmony_ci    description: Delay is in pico seconds
698c2ecf20Sopenharmony_ci    enum: [ 250, 500, 750, 1000, 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000,
708c2ecf20Sopenharmony_ci            3250, 3500, 3750, 4000 ]
718c2ecf20Sopenharmony_ci    default: 2000
728c2ecf20Sopenharmony_ci
738c2ecf20Sopenharmony_ci  tx-internal-delay-ps:
748c2ecf20Sopenharmony_ci    description: Delay is in pico seconds
758c2ecf20Sopenharmony_ci    enum: [ 250, 500, 750, 1000, 1250, 1500, 1750, 2000, 2250, 2500, 2750, 3000,
768c2ecf20Sopenharmony_ci            3250, 3500, 3750, 4000 ]
778c2ecf20Sopenharmony_ci    default: 2000
788c2ecf20Sopenharmony_ci
798c2ecf20Sopenharmony_cirequired:
808c2ecf20Sopenharmony_ci  - reg
818c2ecf20Sopenharmony_ci
828c2ecf20Sopenharmony_ciunevaluatedProperties: false
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_ciexamples:
858c2ecf20Sopenharmony_ci  - |
868c2ecf20Sopenharmony_ci    #include <dt-bindings/net/ti-dp83869.h>
878c2ecf20Sopenharmony_ci    mdio0 {
888c2ecf20Sopenharmony_ci      #address-cells = <1>;
898c2ecf20Sopenharmony_ci      #size-cells = <0>;
908c2ecf20Sopenharmony_ci      ethphy0: ethernet-phy@0 {
918c2ecf20Sopenharmony_ci        reg = <0>;
928c2ecf20Sopenharmony_ci        tx-fifo-depth = <DP83869_PHYCR_FIFO_DEPTH_4_B_NIB>;
938c2ecf20Sopenharmony_ci        rx-fifo-depth = <DP83869_PHYCR_FIFO_DEPTH_4_B_NIB>;
948c2ecf20Sopenharmony_ci        ti,op-mode = <DP83869_RGMII_COPPER_ETHERNET>;
958c2ecf20Sopenharmony_ci        ti,max-output-impedance = "true";
968c2ecf20Sopenharmony_ci        ti,clk-output-sel = <DP83869_CLK_O_SEL_CHN_A_RCLK>;
978c2ecf20Sopenharmony_ci        rx-internal-delay-ps = <2000>;
988c2ecf20Sopenharmony_ci        tx-internal-delay-ps = <2000>;
998c2ecf20Sopenharmony_ci      };
1008c2ecf20Sopenharmony_ci    };
101