1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2# Copyright (C) Sunplus Co., Ltd. 2021 3%YAML 1.2 4--- 5$id: http://devicetree.org/schemas/net/sunplus,sp7021-emac.yaml# 6$schema: http://devicetree.org/meta-schemas/core.yaml# 7 8title: Sunplus SP7021 Dual Ethernet MAC 9 10maintainers: 11 - Wells Lu <wellslutw@gmail.com> 12 13description: | 14 Sunplus SP7021 dual 10M/100M Ethernet MAC controller. 15 Device node of the controller has following properties. 16 17properties: 18 compatible: 19 const: sunplus,sp7021-emac 20 21 reg: 22 maxItems: 1 23 24 interrupts: 25 maxItems: 1 26 27 clocks: 28 maxItems: 1 29 30 resets: 31 maxItems: 1 32 33 ethernet-ports: 34 type: object 35 additionalProperties: false 36 description: Ethernet ports to PHY 37 38 properties: 39 "#address-cells": 40 const: 1 41 42 "#size-cells": 43 const: 0 44 45 patternProperties: 46 "^port@[0-1]$": 47 type: object 48 additionalProperties: false 49 description: Port to PHY 50 51 properties: 52 reg: 53 minimum: 0 54 maximum: 1 55 56 phy-handle: 57 maxItems: 1 58 59 phy-mode: 60 maxItems: 1 61 62 nvmem-cells: 63 items: 64 - description: nvmem cell address of MAC address 65 66 nvmem-cell-names: 67 description: names corresponding to the nvmem cells 68 items: 69 - const: mac-address 70 71 required: 72 - reg 73 - phy-handle 74 - phy-mode 75 - nvmem-cells 76 - nvmem-cell-names 77 78 mdio: 79 $ref: mdio.yaml# 80 unevaluatedProperties: false 81 82additionalProperties: false 83 84required: 85 - compatible 86 - reg 87 - interrupts 88 - clocks 89 - resets 90 - pinctrl-0 91 - pinctrl-names 92 - ethernet-ports 93 - mdio 94 95examples: 96 - | 97 #include <dt-bindings/interrupt-controller/irq.h> 98 99 ethernet@9c108000 { 100 compatible = "sunplus,sp7021-emac"; 101 reg = <0x9c108000 0x400>; 102 interrupt-parent = <&intc>; 103 interrupts = <66 IRQ_TYPE_LEVEL_HIGH>; 104 clocks = <&clkc 0xa7>; 105 resets = <&rstc 0x97>; 106 pinctrl-0 = <&emac_demo_board_v3_pins>; 107 pinctrl-names = "default"; 108 109 ethernet-ports { 110 #address-cells = <1>; 111 #size-cells = <0>; 112 113 port@0 { 114 reg = <0>; 115 phy-handle = <ð_phy0>; 116 phy-mode = "rmii"; 117 nvmem-cells = <&mac_addr0>; 118 nvmem-cell-names = "mac-address"; 119 }; 120 121 port@1 { 122 reg = <1>; 123 phy-handle = <ð_phy1>; 124 phy-mode = "rmii"; 125 nvmem-cells = <&mac_addr1>; 126 nvmem-cell-names = "mac-address"; 127 }; 128 }; 129 130 mdio { 131 #address-cells = <1>; 132 #size-cells = <0>; 133 134 eth_phy0: ethernet-phy@0 { 135 reg = <0>; 136 }; 137 138 eth_phy1: ethernet-phy@1 { 139 reg = <1>; 140 }; 141 }; 142 }; 143... 144