Message ID | 20250306203858.1677595-3-jonas@kwiboo.se (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | Use DELAY_ENABLE macro for RK3328, RK3566/RK3568 and RK3588 | expand |
Hello Jonas, On 2025-03-06 21:38, Jonas Karlman wrote: > Support for Rockchip RK3566/RK3568 GMAC was added without use of the > DELAY_ENABLE macro to assist with enable/disable use of MAC rx/tx > delay. > > Change to use the DELAY_ENABLE macro to help disable MAC delay when > RGMII_ID/RXID/TXID is used. This also re-order to enable/disable before s/re-order/re-orders/ > the delay is written to match all other GMAC and vendor kernel. s/GMAC/GMACs/ > Fixes: 3bb3d6b1c195 ("net: stmmac: Add RK3566/RK3568 SoC support") > Signed-off-by: Jonas Karlman <jonas@kwiboo.se> > --- > drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 9 ++++----- > 1 file changed, 4 insertions(+), 5 deletions(-) > > diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c > b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c > index 297fa93e4a39..37eb86e4e325 100644 > --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c > +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c > @@ -1049,14 +1049,13 @@ static void rk3568_set_to_rgmii(struct > rk_priv_data *bsp_priv, > con1 = (bsp_priv->id == 1) ? RK3568_GRF_GMAC1_CON1 : > RK3568_GRF_GMAC0_CON1; > > + regmap_write(bsp_priv->grf, con1, > + RK3568_GMAC_PHY_INTF_SEL_RGMII | > + DELAY_ENABLE(RK3568, tx_delay, rx_delay)); > + > regmap_write(bsp_priv->grf, con0, > RK3568_GMAC_CLK_RX_DL_CFG(rx_delay) | > RK3568_GMAC_CLK_TX_DL_CFG(tx_delay)); > - > - regmap_write(bsp_priv->grf, con1, > - RK3568_GMAC_PHY_INTF_SEL_RGMII | > - RK3568_GMAC_RXCLK_DLY_ENABLE | > - RK3568_GMAC_TXCLK_DLY_ENABLE); > } > > static void rk3568_set_to_rmii(struct rk_priv_data *bsp_priv) Thanks for this patch... It's looking good to me, and good job spotting this issue! Please, free to include: Reviewed-by: Dragan Simic <dsimic@manjaro.org>
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c index 297fa93e4a39..37eb86e4e325 100644 --- a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c +++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c @@ -1049,14 +1049,13 @@ static void rk3568_set_to_rgmii(struct rk_priv_data *bsp_priv, con1 = (bsp_priv->id == 1) ? RK3568_GRF_GMAC1_CON1 : RK3568_GRF_GMAC0_CON1; + regmap_write(bsp_priv->grf, con1, + RK3568_GMAC_PHY_INTF_SEL_RGMII | + DELAY_ENABLE(RK3568, tx_delay, rx_delay)); + regmap_write(bsp_priv->grf, con0, RK3568_GMAC_CLK_RX_DL_CFG(rx_delay) | RK3568_GMAC_CLK_TX_DL_CFG(tx_delay)); - - regmap_write(bsp_priv->grf, con1, - RK3568_GMAC_PHY_INTF_SEL_RGMII | - RK3568_GMAC_RXCLK_DLY_ENABLE | - RK3568_GMAC_TXCLK_DLY_ENABLE); } static void rk3568_set_to_rmii(struct rk_priv_data *bsp_priv)
Support for Rockchip RK3566/RK3568 GMAC was added without use of the DELAY_ENABLE macro to assist with enable/disable use of MAC rx/tx delay. Change to use the DELAY_ENABLE macro to help disable MAC delay when RGMII_ID/RXID/TXID is used. This also re-order to enable/disable before the delay is written to match all other GMAC and vendor kernel. Fixes: 3bb3d6b1c195 ("net: stmmac: Add RK3566/RK3568 SoC support") Signed-off-by: Jonas Karlman <jonas@kwiboo.se> --- drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-)