workaround for rockchip gigabit ethernet not able to init dma

This commit is contained in:
Paolo Sabatino
2025-08-17 23:04:33 +02:00
committed by Paolo
parent 7a02c24af6
commit ae11ad5db5
2 changed files with 42 additions and 0 deletions

View File

@@ -0,0 +1,21 @@
Temporary patch to workaround a DMA reset issue with rockchip
devices experienced at least on rk3288 and rk3328 with a message
like this:
rk_gmac-dwmac ff290000.ethernet end0: Failed to reset the dma
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index e0fb06af1f94..156a5d25d1fd 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -3133,8 +3133,8 @@ static int stmmac_init_dma_engine(struct stmmac_priv *priv)
ret = stmmac_reset(priv, priv->ioaddr);
if (ret) {
- netdev_err(priv->dev, "Failed to reset the dma\n");
- return ret;
+ netdev_warn(priv->dev, "Failed to reset the dma, device will work with reduced throughput\n");
+ ret = 0;
}
/* DMA Configuration */

View File

@@ -0,0 +1,21 @@
Temporary patch to workaround a DMA reset issue with rockchip
devices experienced at least on rk3288 and rk3328 with a message
like this:
rk_gmac-dwmac ff290000.ethernet end0: Failed to reset the dma
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
index e0fb06af1f94..156a5d25d1fd 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -3133,8 +3133,8 @@ static int stmmac_init_dma_engine(struct stmmac_priv *priv)
ret = stmmac_reset(priv, priv->ioaddr);
if (ret) {
- netdev_err(priv->dev, "Failed to reset the dma\n");
- return ret;
+ netdev_warn(priv->dev, "Failed to reset the dma, device will work with reduced throughput\n");
+ ret = 0;
}
/* DMA Configuration */