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

title: Ethernet Controller Generic Binding

maintainers:
  - David S. Miller <davem@davemloft.net>

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

  local-mac-address:
    description:
      Specifies the MAC address that was assigned to the network device.
    $ref: /schemas/types.yaml#/definitions/uint8-array
    items:
      - minItems: 6
        maxItems: 6

  mac-address:
    description:
      Specifies the MAC address that was last used by the boot
      program; should be used in cases where the MAC address assigned
      to the device by the boot program is different from the
      local-mac-address property.
    $ref: /schemas/types.yaml#/definitions/uint8-array
    items:
      - minItems: 6
        maxItems: 6

  max-frame-size:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      Maximum transfer unit (IEEE defined MTU), rather than the
      maximum frame size (there\'s contradiction in the Devicetree
      Specification).

  max-speed:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      Specifies maximum speed in Mbit/s supported by the device.

  nvmem-cells:
    maxItems: 1
    description:
      Reference to an nvmem node for the MAC address

  nvmem-cells-names:
    const: mac-address

  phy-connection-type:
    description:
      Specifies interface type between the Ethernet device and a physical
      layer (PHY) device.
    enum:
      # There is not a standard bus between the MAC and the PHY,
      # something proprietary is being used to embed the PHY in the
      # MAC.
      - internal
      - mii
      - gmii
      - sgmii
      - qsgmii
      - tbi
      - rev-mii
      - rmii

      # RX and TX delays are added by the MAC when required
      - rgmii

      # RGMII with internal RX and TX delays provided by the PHY,
      # the MAC should not add the RX or TX delays in this case
      - rgmii-id

      # RGMII with internal RX delay provided by the PHY, the MAC
      # should not add an RX delay in this case
      - rgmii-rxid

      # RGMII with internal TX delay provided by the PHY, the MAC
      # should not add an TX delay in this case
      - rgmii-txid
      - rtbi
      - smii
      - xgmii
      - trgmii
      - 1000base-x
      - 2500base-x
      - rxaui
      - xaui

      # 10GBASE-KR, XFI, SFI
      - 10gbase-kr
      - usxgmii
      - 10gbase-r

  phy-mode:
    $ref: "#/properties/phy-connection-type"

  phy-handle:
    $ref: /schemas/types.yaml#/definitions/phandle
    description:
      Specifies a reference to a node representing a PHY device.

  phy:
    $ref: "#/properties/phy-handle"
    deprecated: true

  phy-device:
    $ref: "#/properties/phy-handle"
    deprecated: true

  rx-fifo-depth:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      The size of the controller\'s receive fifo in bytes. This is used
      for components that can have configurable receive fifo sizes,
      and is useful for determining certain configuration settings
      such as flow control thresholds.

  rx-internal-delay-ps:
    description: |
      RGMII Receive Clock Delay defined in pico seconds.
      This is used for controllers that have configurable RX internal delays.
      If this property is present then the MAC applies the RX delay.

  sfp:
    $ref: /schemas/types.yaml#/definitions/phandle
    description:
      Specifies a reference to a node representing a SFP cage.

  tx-fifo-depth:
    $ref: /schemas/types.yaml#/definitions/uint32
    description:
      The size of the controller\'s transmit fifo in bytes. This
      is used for components that can have configurable fifo sizes.

  tx-internal-delay-ps:
    description: |
      RGMII Transmit Clock Delay defined in pico seconds.
      This is used for controllers that have configurable TX internal delays.
      If this property is present then the MAC applies the TX delay.

  managed:
    description:
      Specifies the PHY management type. If auto is set and fixed-link
      is not specified, it uses MDIO for management.
    $ref: /schemas/types.yaml#/definitions/string
    default: auto
    enum:
      - auto
      - in-band-status

  fixed-link:
    allOf:
      - if:
          type: array
        then:
          deprecated: true
          minItems: 1
          maxItems: 1
          items:
            items:
              - minimum: 0
                maximum: 31
                description:
                  Emulated PHY ID, choose any but unique to the all
                  specified fixed-links

              - enum: [0, 1]
                description:
                  Duplex configuration. 0 for half duplex or 1 for
                  full duplex

              - enum: [10, 100, 1000]
                description:
                  Link speed in Mbits/sec.

              - enum: [0, 1]
                description:
                  Pause configuration. 0 for no pause, 1 for pause

              - enum: [0, 1]
                description:
                  Asymmetric pause configuration. 0 for no asymmetric
                  pause, 1 for asymmetric pause


      - if:
          type: object
        then:
          properties:
            speed:
              description:
                Link speed.
              $ref: /schemas/types.yaml#/definitions/uint32
              enum: [10, 100, 1000]

            full-duplex:
              $ref: /schemas/types.yaml#/definitions/flag
              description:
                Indicates that full-duplex is used. When absent, half
                duplex is assumed.

            asym-pause:
              $ref: /schemas/types.yaml#/definitions/flag
              description:
                Indicates that asym_pause should be enabled.

            link-gpios:
              maxItems: 1
              description:
                GPIO to determine if the link is up

          required:
            - speed

additionalProperties: true

...
