summaryrefslogtreecommitdiff
path: root/drivers/net/phy
diff options
context:
space:
mode:
authorBartosz Golaszewski <bartosz.golaszewski@linaro.org>2024-07-08 09:50:21 +0200
committerDavid S. Miller <davem@davemloft.net>2024-07-10 04:57:28 +0100
commitad649a1fac37e390de5b4211b902ec666c4cd202 (patch)
treece7d3ec54663ef3a12cacac35ef091c4fe1cdfa9 /drivers/net/phy
parent663117327a39d1ad8be79d3c6451173c37e97c56 (diff)
downloadlwn-ad649a1fac37e390de5b4211b902ec666c4cd202.tar.gz
lwn-ad649a1fac37e390de5b4211b902ec666c4cd202.zip
net: phy: aquantia: wait for FW reset before checking the vendor ID
Checking the firmware register before it complete the boot process makes no sense, it will report 0 even if FW is available from internal memory. Always wait for FW to boot before continuing or we'll unnecessarily try to load it from nvmem/filesystem and fail. Signed-off-by: Bartosz Golaszewski <bartosz.golaszewski@linaro.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/phy')
-rw-r--r--drivers/net/phy/aquantia/aquantia_firmware.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/phy/aquantia/aquantia_firmware.c b/drivers/net/phy/aquantia/aquantia_firmware.c
index 0c9640ef153b..524627a36c6f 100644
--- a/drivers/net/phy/aquantia/aquantia_firmware.c
+++ b/drivers/net/phy/aquantia/aquantia_firmware.c
@@ -353,6 +353,10 @@ int aqr_firmware_load(struct phy_device *phydev)
{
int ret;
+ ret = aqr_wait_reset_complete(phydev);
+ if (ret)
+ return ret;
+
/* Check if the firmware is not already loaded by pooling
* the current version returned by the PHY. If 0 is returned,
* no firmware is loaded.