[PATCH net-next v8 01/10] dt-bindings: net: airoha: Add GDM port ethernet child node
Lorenzo Bianconi
lorenzo at kernel.org
Tue May 19 01:57:44 PDT 2026
EN7581 and AN7583 SoCs support connecting multiple external SerDes to GDM3
or GDM4 ports via a hw arbiter that manages the traffic in a TDM manner.
As a result multiple net_devices can connect to the same GDM{3,4} port
and there is a theoretical "1:n" relation between GDM ports and
net_devices.
Introduce the ethernet node child of a specific GDM port in order to model
a given net_device that is connected via the external arbiter to the
GDM{3,4} port. This new ethernet node is defined by the "airoha,eth-port"
compatible string. Please note GDM1 and GDM2 does not support the
connection with the external arbiter and they are represented by an
ethernet node defined by the "airoha,eth-mac" compatible string.
Signed-off-by: Lorenzo Bianconi <lorenzo at kernel.org>
---
.../devicetree/bindings/net/airoha,en7581-eth.yaml | 56 +++++++++++++++++++++-
1 file changed, 55 insertions(+), 1 deletion(-)
diff --git a/Documentation/devicetree/bindings/net/airoha,en7581-eth.yaml b/Documentation/devicetree/bindings/net/airoha,en7581-eth.yaml
index fbe2ddcdd909..17fe2edf4886 100644
--- a/Documentation/devicetree/bindings/net/airoha,en7581-eth.yaml
+++ b/Documentation/devicetree/bindings/net/airoha,en7581-eth.yaml
@@ -130,6 +130,42 @@ patternProperties:
maximum: 4
description: GMAC port identifier
+ allOf:
+ - if:
+ properties:
+ reg:
+ contains:
+ items:
+ - enum:
+ - 3
+ - 4
+ then:
+ properties:
+ '#address-cells':
+ const: 1
+
+ '#size-cells':
+ const: 0
+
+ patternProperties:
+ "^ethernet@[0-5]$":
+ type: object
+ unevaluatedProperties: false
+ $ref: ethernet-controller.yaml#
+ description: External ethernet port ID available on the GDM port
+
+ properties:
+ compatible:
+ const: airoha,eth-port
+
+ reg:
+ maximum: 5
+ description: External ethernet port identifier
+
+ required:
+ - reg
+ - compatible
+
required:
- reg
- compatible
@@ -191,9 +227,27 @@ examples:
#address-cells = <1>;
#size-cells = <0>;
- mac: ethernet at 1 {
+ ethernet at 1 {
compatible = "airoha,eth-mac";
reg = <1>;
};
+
+ ethernet at 4 {
+ compatible = "airoha,eth-mac";
+ reg = <4>;
+
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ethernet at 0 {
+ compatible = "airoha,eth-port";
+ reg = <0>;
+ };
+
+ ethernet at 1 {
+ compatible = "airoha,eth-port";
+ reg = <1>;
+ };
+ };
};
};
--
2.54.0
More information about the Linux-mediatek
mailing list