# Copyright (c) 2019 Interay Solutions B.V.
# Copyright (c) 2019 Oane Kingma
# SPDX-License-Identifier: Apache-2.0

description: SiLabs Gecko Ethernet

compatible: "silabs,gecko-ethernet"

include: ethernet-controller.yaml

properties:
  reg:
    required: true
    description: mmio register space

  interrupts:
    required: true
    description: required interrupts

  # PHY address
  phy-address:
    type: int
    required: true
    description: address of the PHY on the MDIO bus

  # RMII interface location
  location-rmii:
    type: int
    required: true
    description: location of RMII pins, configuration defined as <location>

  # PHY management interface location
  location-mdio:
    type: int
    required: true
    description: location of MDC and MDIO pins, configuration defined as <location>

  # PHY management pins
  location-phy_mdc:
    type: array
    required: true
    description: PHY MDC individual pin configuration defined as <location port pin>

  location-phy_mdio:
    type: array
    required: true
    description: PHY MDIO individual pin configuration defined as <location port pin>

  # RMII interface pins
  location-rmii_refclk:
    type: array
    required: true
    description: Reference clock individual pin configuration defined as <location port pin>

  location-rmii_crs_dv:
    type: array
    required: true
    description: Receive data valid individual pin configuration defined as <location port pin>

  location-rmii_txd0:
    type: array
    required: true
    description: Transmit data 0 individual pin configuration defined as <location port pin>

  location-rmii_txd1:
    type: array
    required: true
    description: Transmit data 1 individual pin configuration defined as <location port pin>

  location-rmii_tx_en:
    type: array
    required: true
    description: Transmit enable individual pin configuration defined as <location port pin>

  location-rmii_rxd0:
    type: array
    required: true
    description: Receive data 0 individual pin configuration defined as <location port pin>

  location-rmii_rxd1:
    type: array
    required: true
    description: Receive data 1 individual pin configuration defined as <location port pin>

  location-rmii_rx_er:
    type: array
    required: true
    description: Receive error individual pin configuration defined as <location port pin>

  # PHY control pins
  location-phy_pwr_enable:
    type: array
    description: PHY power enable individual pin configuration defined as <port pin>

  location-phy_reset:
    type: array
    description: PHY reset individual pin configuration defined as <port pin>

  location-phy_interrupt:
    type: array
    description: PHY interrupt individual pin configuration defined as <port pin>
