aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/usb/asix_common.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/net/usb/asix_common.c')
-rw-r--r--drivers/net/usb/asix_common.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/drivers/net/usb/asix_common.c b/drivers/net/usb/asix_common.c
index f79eb12c326a..125cff57c759 100644
--- a/drivers/net/usb/asix_common.c
+++ b/drivers/net/usb/asix_common.c
@@ -433,13 +433,13 @@ int asix_mdio_read(struct net_device *netdev, int phy_id, int loc)
433 mutex_lock(&dev->phy_mutex); 433 mutex_lock(&dev->phy_mutex);
434 do { 434 do {
435 ret = asix_set_sw_mii(dev, 0); 435 ret = asix_set_sw_mii(dev, 0);
436 if (ret == -ENODEV) 436 if (ret == -ENODEV || ret == -ETIMEDOUT)
437 break; 437 break;
438 usleep_range(1000, 1100); 438 usleep_range(1000, 1100);
439 ret = asix_read_cmd(dev, AX_CMD_STATMNGSTS_REG, 439 ret = asix_read_cmd(dev, AX_CMD_STATMNGSTS_REG,
440 0, 0, 1, &smsr, 0); 440 0, 0, 1, &smsr, 0);
441 } while (!(smsr & AX_HOST_EN) && (i++ < 30) && (ret != -ENODEV)); 441 } while (!(smsr & AX_HOST_EN) && (i++ < 30) && (ret != -ENODEV));
442 if (ret == -ENODEV) { 442 if (ret == -ENODEV || ret == -ETIMEDOUT) {
443 mutex_unlock(&dev->phy_mutex); 443 mutex_unlock(&dev->phy_mutex);
444 return ret; 444 return ret;
445 } 445 }
@@ -497,13 +497,13 @@ int asix_mdio_read_nopm(struct net_device *netdev, int phy_id, int loc)
497 mutex_lock(&dev->phy_mutex); 497 mutex_lock(&dev->phy_mutex);
498 do { 498 do {
499 ret = asix_set_sw_mii(dev, 1); 499 ret = asix_set_sw_mii(dev, 1);
500 if (ret == -ENODEV) 500 if (ret == -ENODEV || ret == -ETIMEDOUT)
501 break; 501 break;
502 usleep_range(1000, 1100); 502 usleep_range(1000, 1100);
503 ret = asix_read_cmd(dev, AX_CMD_STATMNGSTS_REG, 503 ret = asix_read_cmd(dev, AX_CMD_STATMNGSTS_REG,
504 0, 0, 1, &smsr, 1); 504 0, 0, 1, &smsr, 1);
505 } while (!(smsr & AX_HOST_EN) && (i++ < 30) && (ret != -ENODEV)); 505 } while (!(smsr & AX_HOST_EN) && (i++ < 30) && (ret != -ENODEV));
506 if (ret == -ENODEV) { 506 if (ret == -ENODEV || ret == -ETIMEDOUT) {
507 mutex_unlock(&dev->phy_mutex); 507 mutex_unlock(&dev->phy_mutex);
508 return ret; 508 return ret;
509 } 509 }