dt-bindings: net: dsa: add MT7628 ESW

Add device tree bindings for the MediaTek MT7628 embedded Ethernet
Switch.

The Switch provides 5 external user ports and 1 internal CPU port, with
integrated 10/100 PHYs and fixed port to PHY mapping.

The CPU port is internally connected and uses port index 6.

Signed-off-by: Joris Vaisvila <joey@tinyisr.com>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@oss.qualcomm.com>
Link: https://patch.msgid.link/20260813190241.789323-2-joey@tinyisr.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
This commit is contained in:
Joris Vaisvila
2026-08-13 22:02:38 +03:00
committed by Paolo Abeni
parent 194e4ffd2e
commit 2873d364f4

View File

@@ -0,0 +1,96 @@
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/net/dsa/mediatek,mt7628-esw.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Mediatek MT7628 Embedded Ethernet Switch
maintainers:
- Joris Vaisvila <joey@tinyisr.com>
description:
The MT7628 SoC's built-in Ethernet Switch has five user ports and one
internally connected CPU port. The user ports are all connected to the SoC's
integrated Fast Ethernet PHYs. The switch registers are directly mapped in
the SoC's memory.
allOf:
- $ref: dsa.yaml#/$defs/ethernet-ports
properties:
compatible:
const: mediatek,mt7628-esw
reg:
maxItems: 1
resets:
items:
- description: internal switch block reset
- description: internal phy package reset
reset-names:
items:
- const: esw
- const: ephy
required:
- compatible
- reg
- resets
- reset-names
- ethernet-ports
unevaluatedProperties: false
examples:
- |
switch@10110000 {
compatible = "mediatek,mt7628-esw";
reg = <0x10110000 0x8000>;
resets = <&sysc 23>, <&sysc 24>;
reset-names = "esw", "ephy";
ethernet-ports {
#address-cells = <1>;
#size-cells = <0>;
ethernet-port@0 {
reg = <0>;
phy-mode = "internal";
};
ethernet-port@1 {
reg = <1>;
phy-mode = "internal";
};
ethernet-port@2 {
reg = <2>;
phy-mode = "internal";
};
ethernet-port@3 {
reg = <3>;
phy-mode = "internal";
};
ethernet-port@4 {
reg = <4>;
phy-mode = "internal";
};
ethernet-port@6 {
reg = <6>;
phy-mode = "internal";
ethernet = <&ethernet>;
fixed-link {
speed = <1000>;
full-duplex;
};
};
};
};