This series add below new features to xgmac:
correct RX COE parsing
add more feature parsing from hw cap
enlarge C22 ADDR and rx/tx channels
support parse safety ce/ue irq from DT
support per channel irq
Since v2:
- check per channel irq by (res->rx_irq[0] > 0 && res->tx_irq[0] > 0)
rather than (res->rx_irq[0] && res->tx_irq[0])
- bypass if (irq <= 0) when request rx/tx irq
Since v1:
- remove "_irq" suffix from safety irqs dt binding
- remove "snps,per-channel-interrupt" dt binding, check the channel irq
instead.
- more renaming about "msi" to reflect per channel irq isn't MSI
specific
Jisheng Zhang (10):
net: stmmac: correct RX COE parsing for xgmac
net: stmmac: xgmac: add more feature parsing from hw cap
net: stmmac: mdio: enlarge the max XGMAC C22 ADDR to 31
net: stmmac: enlarge max rx/tx queues and channels to 16
net: stmmac: reflect multi irqs for tx/rx channels and mac and safety
net: stmmac: xgmac: support per-channel irq
dt-bindings: net: snps,dwmac: add safety irq support
net: stmmac: platform: support parsing safety irqs from DT
dt-bindings: net: snps,dwmac: add per channel irq support
net: stmmac: platform: support parsing per channel irq from DT
.../devicetree/bindings/net/snps,dwmac.yaml | 37 ++++++++++++
.../net/ethernet/stmicro/stmmac/dwmac-intel.c | 4 +-
.../net/ethernet/stmicro/stmmac/dwmac4_dma.c | 2 +-
.../net/ethernet/stmicro/stmmac/dwxgmac2.h | 5 ++
.../ethernet/stmicro/stmmac/dwxgmac2_core.c | 5 +-
.../ethernet/stmicro/stmmac/dwxgmac2_dma.c | 37 +++++++-----
.../net/ethernet/stmicro/stmmac/stmmac_main.c | 58 ++++++++++---------
.../net/ethernet/stmicro/stmmac/stmmac_mdio.c | 2 +-
.../ethernet/stmicro/stmmac/stmmac_platform.c | 35 +++++++++++
include/linux/stmmac.h | 10 ++--
10 files changed, 142 insertions(+), 53 deletions(-)
--
2.40.1
The snps dwmac IP support safety features, and those Safety Feature
Correctible Error and Uncorrectible Error irqs may be separate irqs.
Signed-off-by: Jisheng Zhang <[email protected]>
---
Documentation/devicetree/bindings/net/snps,dwmac.yaml | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/Documentation/devicetree/bindings/net/snps,dwmac.yaml b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
index ddf9522a5dc2..5d81042f5634 100644
--- a/Documentation/devicetree/bindings/net/snps,dwmac.yaml
+++ b/Documentation/devicetree/bindings/net/snps,dwmac.yaml
@@ -107,6 +107,8 @@ properties:
- description: Combined signal for various interrupt events
- description: The interrupt to manage the remote wake-up packet detection
- description: The interrupt that occurs when Rx exits the LPI state
+ - description: The interrupt that occurs when Safety Feature Correctible Errors happen
+ - description: The interrupt that occurs when Safety Feature Uncorrectible Errors happen
interrupt-names:
minItems: 1
@@ -114,6 +116,8 @@ properties:
- const: macirq
- enum: [eth_wake_irq, eth_lpi]
- const: eth_lpi
+ - const: sfty_ce
+ - const: sfty_ue
clocks:
minItems: 1
--
2.40.1