Commit 03b35fc4 authored by Martin Blumenstingl's avatar Martin Blumenstingl
Browse files

dt-bindings: net: Add documentation for the RTL8211F Ethernet PHY



The Realtek RTL8211F Ethernet PHY connects to the MAC using RGMII. It
can drive up to three LEDs with the following status/functionality:
- 10Mbit/s link
- 100Mbit/s link
- 1000Mbit/s link
- RX/TX activity
- EEE enabled

Signed-off-by: default avatarMartin Blumenstingl <martin.blumenstingl@googlemail.com>
parent ad62b637
Loading
Loading
Loading
Loading
+75 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: "http://devicetree.org/schemas/net/realtek,rtl8211f.yaml#"
$schema: "http://devicetree.org/meta-schemas/core.yaml#"

title: Realtek RTL8211F Ethernet PHY

maintainers:
  - Martin Blumenstingl <martin.blumenstingl@googlemail.com>

description: |
  The Realtek RTL8211F-CG/RTL8211FI-CG is a highly integrated Ethernet
  transceiver that is compatible with 10Base-T, 100Base-TX, and 1000Base-T
  IEEE 802.3 standards. It provides all the necessary physical layer
  functions to transmit and receive Ethernet packets over CAT.5 UTP cable.
  The RTL8211FI-CG is manufactured to industrial grade standards.

  The RTL8211F(I)-CG uses state-of-the-art DSP technology and an Analog
  Front End (AFE) to enable high-speed data transmission and reception over
  UTP cable. Functions such as Crossover Detection & Auto-Correction,
  polarity correction, adaptive equalization, cross-talk cancellation,
  echo cancellation, timing recovery, and error correction are implemented
  in the RTL8211F(I)-CG to provide robust transmission and reception
  capabilities at 10Mbps, 100Mbps, or 1000Mbps.

  Data transfer between MAC and PHY is via the Reduced Gigabit Media
  Independent Interface (RGMII) for 1000Base-T, 10Base-T, and 100Base-TX.
  The RTL8211F(I)-CG supports various RGMII signaling voltages, including
  3.3V, 2.5V, 1.8V, and 1.5V.

  The RTL8211F(I)-CG incorporates a state-of-the-art switching regulator that
  requires a well-designed PCB layout in order to achieve good power efficiency
  and lower the output voltage ripple and input overshoot.

allOf:
  - $ref: ethernet-phy.yaml#

properties:
  realtek,led-0-mode:
    $ref: /schemas/types.yaml#definitions/uint32
    description: |
       LED0 configuration; see the RTL8211F_LED_* values from
       <dt-bindings/net/realtek-rtl8211f.h>

  realtek,led-1-mode:
    $ref: /schemas/types.yaml#definitions/uint32
    description: |
       LED1 configuration; see the RTL8211F_LED_* values from
       <dt-bindings/net/realtek-rtl8211f.h>

  realtek,led-2-mode:
    $ref: /schemas/types.yaml#definitions/uint32
    description: |
       LED2 configuration; see the RTL8211F_LED_* values from
       <dt-bindings/net/realtek-rtl8211f.h>

required:
  - reg

examples:
  - |
    #include <dt-bindings/net/realtek-rtl8211f.h>

    mdio {
      #address-cells = <1>;
      #size-cells = <0>;

      ethernet-phy@0 {
        reg = <0>;
        realtek,led-0-mode = <0>;
        realtek,led-1-mode = <(RTL8211F_LED_LINK_100 | RTL8211F_LED_ACTIVITY | RTL8211F_LED_EEE)>;
        realtek,led-2-mode = <(RTL8211F_LED_LINK_1000 | RTL8211F_LED_ACTIVITY | RTL8211F_LED_EEE)>;
      };
    };
+12 −0
Original line number Diff line number Diff line
/* SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) */

#ifndef _DT_BINDINGS_REALTEK_RTL8211F_H
#define _DT_BINDINGS_REALTEK_RTL8211F_H

#define RTL8211F_LED_LINK_10			(1 << 0)
#define RTL8211F_LED_LINK_100			(1 << 1)
#define RTL8211F_LED_LINK_1000			(1 << 2)
#define RTL8211F_LED_ACTIVITY			(1 << 3)
#define RTL8211F_LED_EEE			(1 << 4)

#endif /* _DT_BINDINGS_REALTEK_RTL8211F_H */