1*84943d6fSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*84943d6fSEmmanuel Vadot%YAML 1.2 3*84943d6fSEmmanuel Vadot--- 4*84943d6fSEmmanuel Vadot$id: http://devicetree.org/schemas/net/loongson,ls1c-emac.yaml# 5*84943d6fSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6*84943d6fSEmmanuel Vadot 7*84943d6fSEmmanuel Vadottitle: Loongson-1C Ethernet MAC Controller 8*84943d6fSEmmanuel Vadot 9*84943d6fSEmmanuel Vadotmaintainers: 10*84943d6fSEmmanuel Vadot - Keguang Zhang <keguang.zhang@gmail.com> 11*84943d6fSEmmanuel Vadot 12*84943d6fSEmmanuel Vadotdescription: | 13*84943d6fSEmmanuel Vadot Loongson-1C Ethernet MAC Controller is based on 14*84943d6fSEmmanuel Vadot Synopsys DesignWare MAC (version 3.50a). 15*84943d6fSEmmanuel Vadot 16*84943d6fSEmmanuel Vadot Main features 17*84943d6fSEmmanuel Vadot - 10/100Mbps 18*84943d6fSEmmanuel Vadot - Full-duplex operation (IEEE 802.3x flow control automatic transmission) 19*84943d6fSEmmanuel Vadot - Half-duplex operation (CSMA/CD Protocol and back-pressure support) 20*84943d6fSEmmanuel Vadot - IEEE 802.1Q VLAN tag detection for reception frames 21*84943d6fSEmmanuel Vadot - MII interface 22*84943d6fSEmmanuel Vadot - RMII interface 23*84943d6fSEmmanuel Vadot 24*84943d6fSEmmanuel Vadotselect: 25*84943d6fSEmmanuel Vadot properties: 26*84943d6fSEmmanuel Vadot compatible: 27*84943d6fSEmmanuel Vadot contains: 28*84943d6fSEmmanuel Vadot enum: 29*84943d6fSEmmanuel Vadot - loongson,ls1c-emac 30*84943d6fSEmmanuel Vadot required: 31*84943d6fSEmmanuel Vadot - compatible 32*84943d6fSEmmanuel Vadot 33*84943d6fSEmmanuel Vadotproperties: 34*84943d6fSEmmanuel Vadot compatible: 35*84943d6fSEmmanuel Vadot items: 36*84943d6fSEmmanuel Vadot - enum: 37*84943d6fSEmmanuel Vadot - loongson,ls1c-emac 38*84943d6fSEmmanuel Vadot - const: snps,dwmac-3.50a 39*84943d6fSEmmanuel Vadot 40*84943d6fSEmmanuel Vadot reg: 41*84943d6fSEmmanuel Vadot maxItems: 1 42*84943d6fSEmmanuel Vadot 43*84943d6fSEmmanuel Vadot clocks: 44*84943d6fSEmmanuel Vadot maxItems: 1 45*84943d6fSEmmanuel Vadot 46*84943d6fSEmmanuel Vadot clock-names: 47*84943d6fSEmmanuel Vadot items: 48*84943d6fSEmmanuel Vadot - const: stmmaceth 49*84943d6fSEmmanuel Vadot 50*84943d6fSEmmanuel Vadot interrupts: 51*84943d6fSEmmanuel Vadot maxItems: 1 52*84943d6fSEmmanuel Vadot 53*84943d6fSEmmanuel Vadot interrupt-names: 54*84943d6fSEmmanuel Vadot items: 55*84943d6fSEmmanuel Vadot - const: macirq 56*84943d6fSEmmanuel Vadot 57*84943d6fSEmmanuel Vadot loongson,ls1-syscon: 58*84943d6fSEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/phandle 59*84943d6fSEmmanuel Vadot description: 60*84943d6fSEmmanuel Vadot Phandle to the syscon containing some extra configurations 61*84943d6fSEmmanuel Vadot including PHY interface mode. 62*84943d6fSEmmanuel Vadot 63*84943d6fSEmmanuel Vadot phy-mode: 64*84943d6fSEmmanuel Vadot enum: 65*84943d6fSEmmanuel Vadot - mii 66*84943d6fSEmmanuel Vadot - rmii 67*84943d6fSEmmanuel Vadot 68*84943d6fSEmmanuel Vadotrequired: 69*84943d6fSEmmanuel Vadot - compatible 70*84943d6fSEmmanuel Vadot - reg 71*84943d6fSEmmanuel Vadot - clocks 72*84943d6fSEmmanuel Vadot - clock-names 73*84943d6fSEmmanuel Vadot - interrupts 74*84943d6fSEmmanuel Vadot - interrupt-names 75*84943d6fSEmmanuel Vadot - loongson,ls1-syscon 76*84943d6fSEmmanuel Vadot 77*84943d6fSEmmanuel VadotallOf: 78*84943d6fSEmmanuel Vadot - $ref: snps,dwmac.yaml# 79*84943d6fSEmmanuel Vadot 80*84943d6fSEmmanuel VadotunevaluatedProperties: false 81*84943d6fSEmmanuel Vadot 82*84943d6fSEmmanuel Vadotexamples: 83*84943d6fSEmmanuel Vadot - | 84*84943d6fSEmmanuel Vadot #include <dt-bindings/clock/loongson,ls1x-clk.h> 85*84943d6fSEmmanuel Vadot #include <dt-bindings/interrupt-controller/irq.h> 86*84943d6fSEmmanuel Vadot 87*84943d6fSEmmanuel Vadot emac: ethernet@1fe10000 { 88*84943d6fSEmmanuel Vadot compatible = "loongson,ls1c-emac", "snps,dwmac-3.50a"; 89*84943d6fSEmmanuel Vadot reg = <0x1fe10000 0x10000>; 90*84943d6fSEmmanuel Vadot 91*84943d6fSEmmanuel Vadot clocks = <&clkc LS1X_CLKID_AHB>; 92*84943d6fSEmmanuel Vadot clock-names = "stmmaceth"; 93*84943d6fSEmmanuel Vadot 94*84943d6fSEmmanuel Vadot interrupt-parent = <&intc1>; 95*84943d6fSEmmanuel Vadot interrupts = <2 IRQ_TYPE_LEVEL_HIGH>; 96*84943d6fSEmmanuel Vadot interrupt-names = "macirq"; 97*84943d6fSEmmanuel Vadot 98*84943d6fSEmmanuel Vadot loongson,ls1-syscon = <&syscon>; 99*84943d6fSEmmanuel Vadot 100*84943d6fSEmmanuel Vadot phy-handle = <&phy0>; 101*84943d6fSEmmanuel Vadot phy-mode = "mii"; 102*84943d6fSEmmanuel Vadot snps,pbl = <1>; 103*84943d6fSEmmanuel Vadot 104*84943d6fSEmmanuel Vadot mdio { 105*84943d6fSEmmanuel Vadot #address-cells = <1>; 106*84943d6fSEmmanuel Vadot #size-cells = <0>; 107*84943d6fSEmmanuel Vadot compatible = "snps,dwmac-mdio"; 108*84943d6fSEmmanuel Vadot 109*84943d6fSEmmanuel Vadot phy0: ethernet-phy@13 { 110*84943d6fSEmmanuel Vadot reg = <0x13>; 111*84943d6fSEmmanuel Vadot }; 112*84943d6fSEmmanuel Vadot }; 113*84943d6fSEmmanuel Vadot }; 114