123456789101112131415161718192021222324252627 |
- Until upstream commit 6d4cd041f0af("net: phy: at803x: disable delay
- only for RGMII mode"), delays were not disabled on driver probe
- for the Atheros AR803x PHYs, although the RX delay is enabled on
- soft and hard reset.
- In addition, the TX delay setting is retained on soft-reset.
- This patch disables both delays on config init to align the behavior
- with kernel 5.1 and higher. It can be safely dropped with kernel 5.1.
- --- a/drivers/net/phy/at803x.c
- +++ b/drivers/net/phy/at803x.c
- @@ -279,6 +279,14 @@ static int at803x_config_init(struct phy
- if (ret < 0)
- return ret;
-
- + /* Disable RX delay */
- + at803x_debug_reg_mask(phydev, AT803X_DEBUG_REG_0,
- + AT803X_DEBUG_RX_CLK_DLY_EN, 0);
- +
- + /* Disable TX delay */
- + at803x_debug_reg_mask(phydev, AT803X_DEBUG_REG_5,
- + AT803X_DEBUG_TX_CLK_DLY_EN, 0);
- +
- if (phydev->interface == PHY_INTERFACE_MODE_RGMII_RXID ||
- phydev->interface == PHY_INTERFACE_MODE_RGMII_ID) {
- ret = at803x_enable_rx_delay(phydev);
|