2020-05-22 14:06:52 +02:00
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
2020-05-28 15:59:02 +02:00
$id : http://devicetree.org/schemas/net/mediatek,star-emac.yaml#
2020-05-22 14:06:52 +02:00
$schema : http://devicetree.org/meta-schemas/core.yaml#
title : MediaTek STAR Ethernet MAC Controller
maintainers :
- Bartosz Golaszewski <bgolaszewski@baylibre.com>
description :
This Ethernet MAC is used on the MT8* family of SoCs from MediaTek.
It's compliant with 802.3 standards and supports half- and full-duplex
modes with flow-control as well as CRC offloading and VLAN tags.
allOf :
- $ref : "ethernet-controller.yaml#"
properties :
compatible :
enum :
- mediatek,mt8516-eth
- mediatek,mt8518-eth
- mediatek,mt8175-eth
2022-06-29 11:17:37 +08:00
- mediatek,mt8365-eth
2020-05-22 14:06:52 +02:00
reg :
maxItems : 1
interrupts :
maxItems : 1
clocks :
minItems : 3
maxItems : 3
clock-names :
additionalItems : false
items :
- const : core
- const : reg
- const : trans
mediatek,pericfg :
2020-12-17 16:34:29 -06:00
$ref : /schemas/types.yaml#/definitions/phandle
2020-05-22 14:06:52 +02:00
description :
Phandle to the device containing the PERICFG register range. This is used
to control the MII mode.
2022-06-29 11:17:40 +08:00
mediatek,rmii-rxc :
type : boolean
description :
If present, indicates that the RMII reference clock, which is from external
PHYs, is connected to RXC pin. Otherwise, is connected to TXC pin.
mediatek,rxc-inverse :
type : boolean
description :
If present, indicates that clock on RXC pad will be inversed.
mediatek,txc-inverse :
type : boolean
description :
If present, indicates that clock on TXC pad will be inversed.
2020-05-22 14:06:52 +02:00
mdio :
2022-01-05 09:10:09 -06:00
$ref : mdio.yaml#
unevaluatedProperties : false
2020-05-22 14:06:52 +02:00
required :
- compatible
- reg
- interrupts
- clocks
- clock-names
- mediatek,pericfg
- phy-handle
2020-10-05 13:38:27 -05:00
unevaluatedProperties : false
2020-05-22 14:06:52 +02:00
examples :
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
#include <dt-bindings/clock/mt8516-clk.h>
ethernet : ethernet@11180000 {
compatible = "mediatek,mt8516-eth";
reg = <0x11180000 0x1000>;
mediatek,pericfg = <&pericfg>;
interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_LOW>;
clocks = <&topckgen CLK_TOP_RG_ETH>,
<&topckgen CLK_TOP_66M_ETH>,
<&topckgen CLK_TOP_133M_ETH>;
clock-names = "core", "reg", "trans";
phy-handle = <ð_phy>;
phy-mode = "rmii";
mdio {
#address-cells = <1>;
#size-cells = <0>;
eth_phy : ethernet-phy@0 {
reg = <0>;
};
};
};