Introduced in commit bed90b06b681 ("net: phy: aquantia: clear PMD Global Transmit Disable bit during init"), the clearing of MDIO_PMA_TXDIS plus the call to aqr107_wait_processor_intensive_op() are only by chance placed between aqr107_config_init() and aqr107_fill_interface_modes(). In other words, aqr107_fill_interface_modes() does not depend in any way on these 2 operations. I am only 90% sure of that, and I intend to move aqr107_fill_interface_modes() to be a part of aqr107_config_init() in the future. So to isolate the issue for blame attribution purposes, make these 2 functions adjacent to each other again. Signed-off-by: Vladimir Oltean --- drivers/net/phy/aquantia/aquantia_main.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/net/phy/aquantia/aquantia_main.c b/drivers/net/phy/aquantia/aquantia_main.c index b9b58c6ce686..7ac0b685a317 100644 --- a/drivers/net/phy/aquantia/aquantia_main.c +++ b/drivers/net/phy/aquantia/aquantia_main.c @@ -1093,16 +1093,16 @@ static int aqr113c_config_init(struct phy_device *phydev) if (ret < 0) return ret; - ret = phy_clear_bits_mmd(phydev, MDIO_MMD_PMAPMD, MDIO_PMA_TXDIS, - MDIO_PMD_TXDIS_GLOBAL); + ret = aqr107_fill_interface_modes(phydev); if (ret) return ret; - ret = aqr107_wait_processor_intensive_op(phydev); + ret = phy_clear_bits_mmd(phydev, MDIO_MMD_PMAPMD, MDIO_PMA_TXDIS, + MDIO_PMD_TXDIS_GLOBAL); if (ret) return ret; - return aqr107_fill_interface_modes(phydev); + return aqr107_wait_processor_intensive_op(phydev); } static int aqr107_probe(struct phy_device *phydev) -- 2.34.1