aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/ethernet/davicom/dm9000.c
diff options
context:
space:
mode:
authorAndrew Ruder <andrew.ruder@elecsyscorp.com>2014-06-04 17:28:48 -0500
committerDavid S. Miller <davem@davemloft.net>2014-06-05 15:12:11 -0700
commitaac6d02280e61bc30302024ffd7541e0951a2cf6 (patch)
tree9e043cd68d4a728ed5562631b52ef2536ee1c82e /drivers/net/ethernet/davicom/dm9000.c
parentdm9000: remove redundant ISR status clear (diff)
downloadlinux-dev-aac6d02280e61bc30302024ffd7541e0951a2cf6.tar.xz
linux-dev-aac6d02280e61bc30302024ffd7541e0951a2cf6.zip
dm9000: handle initial link status
On the DM9000A/DM9000B force the initial check of the link status. The DM9000A/B has a link status changed event and this interrupt bit isn't always set out of reset when a cable is plugged in. This results in the driver not seeing the cable attached link status until the cable is removed and plugged in again. Signed-off-by: Andrew Ruder <andrew.ruder@elecsyscorp.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/davicom/dm9000.c')
-rw-r--r--drivers/net/ethernet/davicom/dm9000.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/net/ethernet/davicom/dm9000.c b/drivers/net/ethernet/davicom/dm9000.c
index a86755f7824e..48870a8b39a4 100644
--- a/drivers/net/ethernet/davicom/dm9000.c
+++ b/drivers/net/ethernet/davicom/dm9000.c
@@ -1326,7 +1326,8 @@ dm9000_open(struct net_device *dev)
mii_check_media(&db->mii, netif_msg_link(db), 1);
netif_start_queue(dev);
- dm9000_schedule_poll(db);
+ /* Poll initial link status */
+ schedule_delayed_work(&db->phy_poll, 1);
return 0;
}