2022-05-08 18:13:19 +08:00
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
# Copyright (C) Sunplus Co., Ltd. 2021
%YAML 1.2
---
$id : http://devicetree.org/schemas/net/sunplus,sp7021-emac.yaml#
$schema : http://devicetree.org/meta-schemas/core.yaml#
2022-08-25 04:04:27 +02:00
title : Sunplus SP7021 Dual Ethernet MAC
2022-05-08 18:13:19 +08:00
maintainers :
- Wells Lu <wellslutw@gmail.com>
description : |
Sunplus SP7021 dual 10M/100M Ethernet MAC controller.
Device node of the controller has following properties.
properties :
compatible :
const : sunplus,sp7021-emac
reg :
maxItems : 1
interrupts :
maxItems : 1
clocks :
maxItems : 1
resets :
maxItems : 1
ethernet-ports :
type : object
2022-08-25 14:26:07 -05:00
additionalProperties : false
2022-05-08 18:13:19 +08:00
description : Ethernet ports to PHY
properties :
"#address-cells" :
const : 1
"#size-cells" :
const : 0
patternProperties :
"^port@[0-1]$" :
type : object
2022-08-25 14:26:07 -05:00
additionalProperties : false
2022-05-08 18:13:19 +08:00
description : Port to PHY
properties :
reg :
minimum : 0
maximum : 1
phy-handle :
maxItems : 1
phy-mode :
maxItems : 1
nvmem-cells :
items :
- description : nvmem cell address of MAC address
nvmem-cell-names :
description : names corresponding to the nvmem cells
items :
- const : mac-address
required :
- reg
- phy-handle
- phy-mode
- nvmem-cells
- nvmem-cell-names
mdio :
$ref : mdio.yaml#
unevaluatedProperties : false
additionalProperties : false
required :
- compatible
- reg
- interrupts
- clocks
- resets
- pinctrl-0
- pinctrl-names
- ethernet-ports
- mdio
examples :
- |
#include <dt-bindings/interrupt-controller/irq.h>
ethernet@9c108000 {
compatible = "sunplus,sp7021-emac";
reg = <0x9c108000 0x400>;
interrupt-parent = <&intc>;
interrupts = <66 IRQ_TYPE_LEVEL_HIGH>;
clocks = <&clkc 0xa7>;
resets = <&rstc 0x97>;
pinctrl-0 = <&emac_demo_board_v3_pins>;
pinctrl-names = "default";
ethernet-ports {
#address-cells = <1>;
#size-cells = <0>;
port@0 {
reg = <0>;
phy-handle = <ð_phy0>;
phy-mode = "rmii";
nvmem-cells = <&mac_addr0>;
nvmem-cell-names = "mac-address";
};
port@1 {
reg = <1>;
phy-handle = <ð_phy1>;
phy-mode = "rmii";
nvmem-cells = <&mac_addr1>;
nvmem-cell-names = "mac-address";
};
};
mdio {
#address-cells = <1>;
#size-cells = <0>;
eth_phy0 : ethernet-phy@0 {
reg = <0>;
};
eth_phy1 : ethernet-phy@1 {
reg = <1>;
};
};
};
...