# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/marvell,orion-mdio.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Marvell MDIO Ethernet Controller interface

maintainers:
  - Andrew Lunn <andrew@lunn.ch>

description: |
  The Ethernet controllers of the Marvel Kirkwood, Dove, Orion5x, MV78xx0,
  Armada 370, Armada XP, Armada 7k and Armada 8k have an identical unit that
  provides an interface with the MDIO bus. Additionally, Armada 7k and Armada
  8k has a second unit which provides an interface with the xMDIO bus. This
  driver handles these interfaces.

properties:
  compatible:
    enum:
      - marvell,orion-mdio
      - marvell,xmdio

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    minItems: 1
    maxItems: 4

required:
  - compatible
  - reg

allOf:
  - $ref: mdio.yaml#

  - if:
      required:
        - interrupts

    then:
      properties:
        reg:
          items:
            - items:
                - $ref: /schemas/types.yaml#/definitions/cell
                - const: 0x84

    else:
      properties:
        reg:
          items:
            - items:
                - $ref: /schemas/types.yaml#/definitions/cell
                - enum:
                    - 0x4
                    - 0x10

unevaluatedProperties: false

examples:
  - |
    mdio@d0072004 {
      compatible = "marvell,orion-mdio";
      reg = <0xd0072004 0x84>;
      #address-cells = <1>;
      #size-cells = <0>;
      interrupts = <30>;

      phy0: ethernet-phy@0 {
        reg = <0>;
      };

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