[PATCH net-next v4 3/8] dt-bindings: net: dsa: Add SoC-e SWIP switch function

From: Vasilij Strassheim

Date: Thu Nov 05 2026 - 10:11:28 EST


Add a binding for the Ethernet switch function integrated into SoC-e
SWIP cores.

Signed-off-by: Vasilij Strassheim <v.strassheim@xxxxxxxxxxxxx>
---
.../bindings/net/dsa/soce,swip-switch.yaml | 96 ++++++++++++++++++++++
1 file changed, 96 insertions(+)

diff --git a/Documentation/devicetree/bindings/net/dsa/soce,swip-switch.yaml b/Documentation/devicetree/bindings/net/dsa/soce,swip-switch.yaml
new file mode 100644
index 000000000000..daac779c466d
--- /dev/null
+++ b/Documentation/devicetree/bindings/net/dsa/soce,swip-switch.yaml
@@ -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/soce,swip-switch.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: SoC-e SWIP FPGA Ethernet switch function
+
+maintainers:
+ - Vasilij Strassheim <v.strassheim@xxxxxxxxxxxxx>
+
+description:
+ Ethernet switch function of the SoC-e Switch IP (SWIP) FPGA core. The port
+ count and presence of VLAN and STP register blocks depend on the FPGA
+ synthesis configuration.
+
+$ref: dsa.yaml#/$defs/ethernet-ports
+
+properties:
+ compatible:
+ const: soce,swip-switch-00-04-0c-10
+ description:
+ This compatible identifies the register layout; its suffix gives
+ the offsets of the core version and feature identification
+ registers (0x00, 0x04, 0x0c, and 0x10). Port counts and optional
+ features depend on the FPGA synthesis configuration and are
+ detected at runtime using this register layout.
+
+ reg: false
+
+ reg-names: false
+
+ ethernet-ports:
+ type: object
+ patternProperties:
+ '^ethernet-port@[0-9a-f]+$':
+ type: object
+
+ properties:
+ reg:
+ maximum: 30
+ description: Switch port index, from 0 through 30.
+
+ phy-mode:
+ enum:
+ - mii
+ - gmii
+ - rmii
+ - rgmii
+ - rgmii-id
+ - rgmii-rxid
+ - rgmii-txid
+
+ required:
+ - reg
+ - phy-mode
+
+required:
+ - compatible
+ - ethernet-ports
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ ethernet-switch {
+ compatible = "soce,swip-switch-00-04-0c-10";
+
+ ethernet-ports {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethernet-port@0 {
+ reg = <0>;
+ phy-handle = <&switchphy0>;
+ phy-mode = "rgmii-id";
+ };
+
+ ethernet-port@1 {
+ reg = <1>;
+ phy-handle = <&switchphy1>;
+ phy-mode = "rgmii-id";
+ };
+
+ ethernet-port@2 {
+ reg = <2>;
+ ethernet = <&eth0>;
+ phy-mode = "gmii";
+
+ fixed-link {
+ speed = <1000>;
+ full-duplex;
+ };
+ };
+ };
+ };

--
2.39.5