# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/mdio.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: MDIO Bus Generic Binding

maintainers:
  - Andrew Lunn <andrew@lunn.ch>
  - Florian Fainelli <f.fainelli@gmail.com>
  - Heiner Kallweit <hkallweit1@gmail.com>

description:
  These are generic properties that can apply to any MDIO bus. Any
  MDIO bus must have a list of child nodes, one per device on the
  bus. These should follow the generic ethernet-phy.yaml document, or
  a device specific binding document.

properties:
  $nodename:
    pattern: "^mdio(@.*)?"

  "#address-cells":
    const: 1

  "#size-cells":
    const: 0

  reset-gpios:
    maxItems: 1
    description:
      The phandle and specifier for the GPIO that controls the RESET
      lines of all devices on that MDIO bus.

  reset-delay-us:
    description:
      RESET pulse width in microseconds. It applies to all MDIO devices
      and must therefore be appropriately determined based on all devices
      requirements (maximum value of all per-device RESET pulse widths).

  reset-post-delay-us:
    description:
      Delay after reset deassert in microseconds. It applies to all MDIO
      devices and it's determined by how fast all devices are ready for
      communication. This delay happens just before e.g. Ethernet PHY
      type ID auto detection.

  clock-frequency:
    description:
      Desired MDIO bus clock frequency in Hz. Values greater than IEEE 802.3
      defined 2.5MHz should only be used when all devices on the bus support
      the given clock speed.

  suppress-preamble:
    description:
      The 32 bit preamble should be suppressed. In order for this to
      work, all devices on the bus must support suppressed preamble.
    type: boolean

patternProperties:
  "^ethernet-phy@[0-9a-f]+$":
    type: object

    properties:
      reg:
        minimum: 0
        maximum: 31
        description:
          The ID number for the device.

      broken-turn-around:
        $ref: /schemas/types.yaml#/definitions/flag
        description:
          If set, indicates the MDIO device does not correctly release
          the turn around line low at end of the control phase of the
          MDIO transaction.

      resets:
        maxItems: 1

      reset-names:
        const: phy

      reset-gpios:
        maxItems: 1
        description:
          The GPIO phandle and specifier for the MDIO reset signal.

      reset-assert-us:
        description:
          Delay after the reset was asserted in microseconds. If this
          property is missing the delay will be skipped.

      reset-deassert-us:
        description:
          Delay after the reset was deasserted in microseconds. If
          this property is missing the delay will be skipped.

    required:
      - reg

additionalProperties: true

examples:
  - |
    davinci_mdio: mdio@5c030000 {
        reg = <0x5c030000 0x1000>;
        #address-cells = <1>;
        #size-cells = <0>;

        reset-gpios = <&gpio2 5 1>;
        reset-delay-us = <2>;

        ethphy0: ethernet-phy@1 {
            reg = <1>;
        };

        ethphy1: ethernet-phy@3 {
            reg = <3>;
        };
    };
