mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 09:36:22 +02:00
dt-bindings: net: airoha: Add GDM port ethernet child node
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.
Reviewed-by: Rob Herring (Arm) <robh@kernel.org>
Signed-off-by: Lorenzo Bianconi <lorenzo@kernel.org>
Link: https://patch.msgid.link/20260603-airoha-eth-multi-serdes-v9-1-5d476bc2f426@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
1b203f7677
commit
a4597204b6
|
|
@ -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@1 {
|
||||
ethernet@1 {
|
||||
compatible = "airoha,eth-mac";
|
||||
reg = <1>;
|
||||
};
|
||||
|
||||
ethernet@4 {
|
||||
compatible = "airoha,eth-mac";
|
||||
reg = <4>;
|
||||
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
ethernet@0 {
|
||||
compatible = "airoha,eth-port";
|
||||
reg = <0>;
|
||||
};
|
||||
|
||||
ethernet@1 {
|
||||
compatible = "airoha,eth-port";
|
||||
reg = <1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user