From: Vladimir Oltean Date: Thu, 21 Aug 2025 15:20:10 +0000 (+0300) Subject: net: phy: aquantia: reorder AQR113C PMD Global Transmit Disable bit clearing with... X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=5433fbc3adcd2b27aadbf76dd35520ff22cdc356;p=users%2Fgriffoul%2Flinux.git net: phy: aquantia: reorder AQR113C PMD Global Transmit Disable bit clearing with supported_interfaces 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 Reviewed-by: Andrew Lunn Link: https://patch.msgid.link/20250821152022.1065237-4-vladimir.oltean@nxp.com Signed-off-by: Jakub Kicinski --- 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)