18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 28c2ecf20Sopenharmony_ci%YAML 1.2 38c2ecf20Sopenharmony_ci--- 48c2ecf20Sopenharmony_ci$id: http://devicetree.org/schemas/net/mediatek,star-emac.yaml# 58c2ecf20Sopenharmony_ci$schema: http://devicetree.org/meta-schemas/core.yaml# 68c2ecf20Sopenharmony_ci 78c2ecf20Sopenharmony_cititle: MediaTek STAR Ethernet MAC Controller 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_cimaintainers: 108c2ecf20Sopenharmony_ci - Bartosz Golaszewski <bgolaszewski@baylibre.com> 118c2ecf20Sopenharmony_ci 128c2ecf20Sopenharmony_cidescription: 138c2ecf20Sopenharmony_ci This Ethernet MAC is used on the MT8* family of SoCs from MediaTek. 148c2ecf20Sopenharmony_ci It's compliant with 802.3 standards and supports half- and full-duplex 158c2ecf20Sopenharmony_ci modes with flow-control as well as CRC offloading and VLAN tags. 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ciallOf: 188c2ecf20Sopenharmony_ci - $ref: "ethernet-controller.yaml#" 198c2ecf20Sopenharmony_ci 208c2ecf20Sopenharmony_ciproperties: 218c2ecf20Sopenharmony_ci compatible: 228c2ecf20Sopenharmony_ci enum: 238c2ecf20Sopenharmony_ci - mediatek,mt8516-eth 248c2ecf20Sopenharmony_ci - mediatek,mt8518-eth 258c2ecf20Sopenharmony_ci - mediatek,mt8175-eth 268c2ecf20Sopenharmony_ci 278c2ecf20Sopenharmony_ci reg: 288c2ecf20Sopenharmony_ci maxItems: 1 298c2ecf20Sopenharmony_ci 308c2ecf20Sopenharmony_ci interrupts: 318c2ecf20Sopenharmony_ci maxItems: 1 328c2ecf20Sopenharmony_ci 338c2ecf20Sopenharmony_ci clocks: 348c2ecf20Sopenharmony_ci minItems: 3 358c2ecf20Sopenharmony_ci maxItems: 3 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci clock-names: 388c2ecf20Sopenharmony_ci additionalItems: false 398c2ecf20Sopenharmony_ci items: 408c2ecf20Sopenharmony_ci - const: core 418c2ecf20Sopenharmony_ci - const: reg 428c2ecf20Sopenharmony_ci - const: trans 438c2ecf20Sopenharmony_ci 448c2ecf20Sopenharmony_ci mediatek,pericfg: 458c2ecf20Sopenharmony_ci $ref: /schemas/types.yaml#definitions/phandle 468c2ecf20Sopenharmony_ci description: 478c2ecf20Sopenharmony_ci Phandle to the device containing the PERICFG register range. This is used 488c2ecf20Sopenharmony_ci to control the MII mode. 498c2ecf20Sopenharmony_ci 508c2ecf20Sopenharmony_ci mdio: 518c2ecf20Sopenharmony_ci type: object 528c2ecf20Sopenharmony_ci description: 538c2ecf20Sopenharmony_ci Creates and registers an MDIO bus. 548c2ecf20Sopenharmony_ci 558c2ecf20Sopenharmony_cirequired: 568c2ecf20Sopenharmony_ci - compatible 578c2ecf20Sopenharmony_ci - reg 588c2ecf20Sopenharmony_ci - interrupts 598c2ecf20Sopenharmony_ci - clocks 608c2ecf20Sopenharmony_ci - clock-names 618c2ecf20Sopenharmony_ci - mediatek,pericfg 628c2ecf20Sopenharmony_ci - phy-handle 638c2ecf20Sopenharmony_ci 648c2ecf20Sopenharmony_ciunevaluatedProperties: false 658c2ecf20Sopenharmony_ci 668c2ecf20Sopenharmony_ciexamples: 678c2ecf20Sopenharmony_ci - | 688c2ecf20Sopenharmony_ci #include <dt-bindings/interrupt-controller/arm-gic.h> 698c2ecf20Sopenharmony_ci #include <dt-bindings/clock/mt8516-clk.h> 708c2ecf20Sopenharmony_ci 718c2ecf20Sopenharmony_ci ethernet: ethernet@11180000 { 728c2ecf20Sopenharmony_ci compatible = "mediatek,mt8516-eth"; 738c2ecf20Sopenharmony_ci reg = <0x11180000 0x1000>; 748c2ecf20Sopenharmony_ci mediatek,pericfg = <&pericfg>; 758c2ecf20Sopenharmony_ci interrupts = <GIC_SPI 111 IRQ_TYPE_LEVEL_LOW>; 768c2ecf20Sopenharmony_ci clocks = <&topckgen CLK_TOP_RG_ETH>, 778c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_66M_ETH>, 788c2ecf20Sopenharmony_ci <&topckgen CLK_TOP_133M_ETH>; 798c2ecf20Sopenharmony_ci clock-names = "core", "reg", "trans"; 808c2ecf20Sopenharmony_ci phy-handle = <ð_phy>; 818c2ecf20Sopenharmony_ci phy-mode = "rmii"; 828c2ecf20Sopenharmony_ci 838c2ecf20Sopenharmony_ci mdio { 848c2ecf20Sopenharmony_ci #address-cells = <1>; 858c2ecf20Sopenharmony_ci #size-cells = <0>; 868c2ecf20Sopenharmony_ci 878c2ecf20Sopenharmony_ci eth_phy: ethernet-phy@0 { 888c2ecf20Sopenharmony_ci reg = <0>; 898c2ecf20Sopenharmony_ci }; 908c2ecf20Sopenharmony_ci }; 918c2ecf20Sopenharmony_ci }; 92