[PATCH RFC/RFT 1/2] dt-bindings: net: sun8i-emac: Add A733 GMAC210 compatible
From: Jerome Brunet
Date: Fri Jul 31 2026 - 13:17:46 EST
The A733 GMAC210 is a DesignWare MAC 5.20 close to the A523 GMAC200, with
the following differences:
* The glue configuration registers are a dedicated MMIO region of the
controller instead of a syscon register, so a second reg entry replaces
the syscon phandle.
* The DMA channels and the LPI event have their own interrupt lines.
* A PTP reference clock and an AHB reset are needed.
* Unlike the A523, the controller does not appear to belong to a power
domain.
* The TX clock delay field is 5 bits wide, allowing up to 3100ps.
Add the new compatible and describe those differences.
Signed-off-by: Jerome Brunet <jbrunet@xxxxxxxxxxxx>
---
.../bindings/net/allwinner,sun8i-a83t-emac.yaml | 130 ++++++++++++++++++---
1 file changed, 115 insertions(+), 15 deletions(-)
diff --git a/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml b/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml
index 323a669fa982..fec42f46378a 100644
--- a/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml
+++ b/Documentation/devicetree/bindings/net/allwinner,sun8i-a83t-emac.yaml
@@ -22,6 +22,7 @@ select:
- allwinner,sun8i-v3s-emac
- allwinner,sun50i-a64-emac
- allwinner,sun55i-a523-gmac200
+ - allwinner,sun60i-a733-gmac210
required:
- compatible
@@ -44,25 +45,38 @@ properties:
- items:
- const: allwinner,sun55i-a523-gmac200
- const: snps,dwmac-4.20a
+ - items:
+ - const: allwinner,sun60i-a733-gmac210
+ - const: snps,dwmac-5.20
reg:
- maxItems: 1
+ minItems: 1
+ items:
+ - description: MAC controller registers
+ - description: Glue configuration registers
interrupts:
- maxItems: 1
+ minItems: 1
+ maxItems: 4
interrupt-names:
- const: macirq
+ minItems: 1
+ items:
+ - const: macirq
+ - const: eth_lpi
+ - const: tx-queue-0
+ - const: rx-queue-0
clocks:
minItems: 1
- maxItems: 2
+ maxItems: 3
clock-names:
minItems: 1
items:
- const: stmmaceth
- const: mbus
+ - const: ptp_ref
phy-supply:
description: PHY regulator
@@ -87,7 +101,6 @@ required:
- reset-names
- phy-handle
- phy-mode
- - syscon
allOf:
- $ref: snps,dwmac.yaml#
@@ -219,36 +232,94 @@ allOf:
properties:
compatible:
contains:
- const: allwinner,sun55i-a523-gmac200
+ enum:
+ - allwinner,sun55i-a523-gmac200
+ - allwinner,sun60i-a733-gmac210
then:
properties:
- clocks:
- minItems: 2
- clock-names:
- minItems: 2
tx-internal-delay-ps:
default: 0
minimum: 0
- maximum: 700
multipleOf: 100
description:
- External RGMII PHY TX clock delay chain value in ps.
+ Internal RGMII PHY TX clock delay chain value in ps.
rx-internal-delay-ps:
default: 0
minimum: 0
maximum: 3100
multipleOf: 100
description:
- External RGMII PHY TX clock delay chain value in ps.
- required:
- - power-domains
+ Internal RGMII PHY RX clock delay chain value in ps.
else:
properties:
+ reg:
+ maxItems: 1
+ interrupts:
+ maxItems: 1
+ interrupt-names:
+ maxItems: 1
clocks:
maxItems: 1
clock-names:
maxItems: 1
power-domains: false
+ required:
+ - syscon
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: allwinner,sun55i-a523-gmac200
+ then:
+ properties:
+ reg:
+ maxItems: 1
+ interrupts:
+ maxItems: 1
+ interrupt-names:
+ maxItems: 1
+ clocks:
+ minItems: 2
+ maxItems: 2
+ clock-names:
+ minItems: 2
+ maxItems: 2
+ resets:
+ maxItems: 1
+ reset-names:
+ maxItems: 1
+ tx-internal-delay-ps:
+ maximum: 700
+ required:
+ - power-domains
+ - syscon
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: allwinner,sun60i-a733-gmac210
+ then:
+ properties:
+ reg:
+ minItems: 2
+ interrupts:
+ minItems: 4
+ interrupt-names:
+ minItems: 4
+ clocks:
+ minItems: 3
+ clock-names:
+ minItems: 3
+ resets:
+ minItems: 2
+ reset-names:
+ minItems: 2
+ tx-internal-delay-ps:
+ maximum: 3100
+ syscon: false
+ power-domains: false
unevaluatedProperties: false
@@ -412,4 +483,33 @@ examples:
};
};
};
+
+ - |
+ ethernet@4510000 {
+ compatible = "allwinner,sun60i-a733-gmac210",
+ "snps,dwmac-5.20";
+ reg = <0x04510000 0x8000>,
+ <0x04518000 0x1000>;
+ clocks = <&ccu 58>, <&ccu 59>, <&ccu 60>;
+ clock-names = "stmmaceth", "mbus", "ptp_ref";
+ resets = <&ccu 30>, <&ccu 31>;
+ reset-names = "stmmaceth", "ahb";
+ interrupts = <0 175 4>, <0 179 4>, <0 176 4>, <0 177 4>;
+ interrupt-names = "macirq", "eth_lpi", "tx-queue-0", "rx-queue-0";
+ pinctrl-names = "default";
+ pinctrl-0 = <&rgmii1_pins>;
+ phy-handle = <&ext_rgmii_phy_2>;
+ phy-mode = "rgmii-id";
+ snps,fixed-burst;
+
+ mdio {
+ compatible = "snps,dwmac-mdio";
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ ext_rgmii_phy_2: ethernet-phy@1 {
+ reg = <1>;
+ };
+ };
+ };
...
--
2.47.3