summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJakub Kicinski <kuba@kernel.org>2026-02-02 19:12:19 -0800
committerJakub Kicinski <kuba@kernel.org>2026-02-02 19:12:20 -0800
commitfbc73cbb777b58fce41d24bdac9a739a1eac079a (patch)
treedfebf6c5a8ee37d36c0731299c830cf48381701f
parent84b86025f6d7844a208c53702c31b1d41aafe2c4 (diff)
parent1ba377008420a63ba2cdbb3f5d1f9d30591f6c52 (diff)
Merge branch 'add-support-for-renesas-rz-g3l-gbeth'
Biju Das says: ==================== Add support for Renesas RZ/G3L GBETH From: Biju Das <biju.das.jz@bp.renesas.com> The Renesas RZ/G3L GBETH IP uses Synopsys DesignWare MAC version 5.30 compared to other Renesas SoC such as RZ/V2H that use MAC version 5.20. The RZ/G3L GBETH requires an extra clock compared to RZ/G3E and has pps interrupts. Document the Renesas RZ/G3L GBETH IP in bindings and add support for the RZ/G3L GBETH in dwmac-renesas-gbeth glue driver. ==================== Link: https://patch.msgid.link/20260131161250.5047-1-biju.das.jz@bp.renesas.com Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r--Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml77
-rw-r--r--Documentation/devicetree/bindings/net/snps,dwmac.yaml3
-rw-r--r--drivers/net/ethernet/stmicro/stmmac/dwmac-renesas-gbeth.c1
3 files changed, 70 insertions, 11 deletions
diff --git a/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml b/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml
index bd53ab300f50..fb60f745a1ff 100644
--- a/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml
+++ b/Documentation/devicetree/bindings/net/renesas,rzv2h-gbeth.yaml
@@ -27,6 +27,9 @@ properties:
compatible:
oneOf:
- items:
+ - const: renesas,r9a08g046-gbeth # RZ/G3L
+ - const: snps,dwmac-5.30a
+ - items:
- enum:
- renesas,r9a09g047-gbeth # RZ/G3E
- renesas,r9a09g056-gbeth # RZ/V2N
@@ -47,13 +50,17 @@ properties:
clocks:
oneOf:
- items:
- - description: CSR clock
- - description: AXI system clock
+ - description: CSR/Register access clock
+ - description: AXI system/Main clock
- description: PTP clock
- description: TX clock
- description: RX clock
- description: TX clock phase-shifted by 180 degrees
- description: RX clock phase-shifted by 180 degrees
+ - description: RMII clock
+
+ minItems: 7
+
- items:
- description: CSR clock
- description: AXI system clock
@@ -69,6 +76,10 @@ properties:
- const: rx
- const: tx-180
- const: rx-180
+ - const: rmii
+
+ minItems: 7
+
- items:
- const: stmmaceth
- const: pclk
@@ -96,6 +107,22 @@ properties:
- const: rx-queue-1
- const: rx-queue-2
- const: rx-queue-3
+ - const: tx-queue-0
+ - const: tx-queue-1
+ - const: tx-queue-2
+ - const: tx-queue-3
+ - const: ptp-pps-0
+ - const: ptp-pps-1
+ - const: ptp-pps-2
+ - const: ptp-pps-3
+ - items:
+ - const: macirq
+ - const: eth_wake_irq
+ - const: eth_lpi
+ - const: rx-queue-0
+ - const: rx-queue-1
+ - const: rx-queue-2
+ - const: rx-queue-3
- const: rx-queue-4
- const: rx-queue-5
- const: rx-queue-6
@@ -139,6 +166,27 @@ allOf:
properties:
compatible:
contains:
+ const: renesas,r9a08g046-gbeth
+ then:
+ properties:
+ clocks:
+ minItems: 8
+
+ clock-names:
+ minItems: 8
+
+ interrupts:
+ minItems: 15
+ maxItems: 15
+
+ interrupt-names:
+ minItems: 15
+ maxItems: 15
+
+ - if:
+ properties:
+ compatible:
+ contains:
const: renesas,r9a09g077-gbeth
then:
properties:
@@ -164,11 +212,25 @@ allOf:
- reset-names
else:
properties:
+ resets:
+ maxItems: 1
+
+ pcs-handle: false
+
+ reset-names: false
+
+ - if:
+ properties:
+ compatible:
+ contains:
+ const: renesas,rzv2h-gbeth
+ then:
+ properties:
clocks:
- minItems: 7
+ maxItems: 7
clock-names:
- minItems: 7
+ maxItems: 7
interrupts:
minItems: 11
@@ -178,13 +240,6 @@ allOf:
minItems: 11
maxItems: 11
- resets:
- maxItems: 1
-
- pcs-handle: false
-
- reset-names: false
-
unevaluatedProperties: false
examples:
diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
index dd3c72e8363e..38bc34dc4f09 100644
--- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
+++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
@@ -75,6 +75,7 @@ properties:
- qcom,sc8280xp-ethqos
- qcom,sm8150-ethqos
- renesas,r9a06g032-gmac
+ - renesas,r9a08g046-gbeth
- renesas,r9a09g077-gbeth
- renesas,rzn1-gmac
- renesas,rzv2h-gbeth
@@ -142,6 +143,8 @@ properties:
pattern: '^rx-queue-[0-7]$'
- description: Per channel transmit completion interrupt
pattern: '^tx-queue-[0-7]$'
+ - description: PPS interrupt
+ pattern: '^ptp-pps-[0-3]$'
clocks:
minItems: 1
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-renesas-gbeth.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-renesas-gbeth.c
index be7f5eb2cdcf..19f34e18bfef 100644
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-renesas-gbeth.c
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-renesas-gbeth.c
@@ -214,6 +214,7 @@ static const struct renesas_gbeth_of_data renesas_gmac_of_data = {
};
static const struct of_device_id renesas_gbeth_match[] = {
+ { .compatible = "renesas,r9a08g046-gbeth", .data = &renesas_gbeth_of_data },
{ .compatible = "renesas,r9a09g077-gbeth", .data = &renesas_gmac_of_data },
{ .compatible = "renesas,rzv2h-gbeth", .data = &renesas_gbeth_of_data },
{ /* Sentinel */ }