diff --git a/[refs] b/[refs] index c38c0846c2f6..ee82e1912cbe 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: f8d79e79a1700fdcf26a1dfcaefad905b1279600 +refs/heads/master: aa1eb452e8d8a97ee65ace0054e7a733ae12cf6d diff --git a/trunk/drivers/net/dm9000.c b/trunk/drivers/net/dm9000.c index 679c291107f5..7c38f6129b55 100644 --- a/trunk/drivers/net/dm9000.c +++ b/trunk/drivers/net/dm9000.c @@ -473,7 +473,14 @@ static int dm9000_nway_reset(struct net_device *dev) static u32 dm9000_get_link(struct net_device *dev) { board_info_t *dm = to_dm9000_board(dev); - return mii_link_ok(&dm->mii); + u32 ret; + + if (dm->flags & DM9000_PLATF_EXT_PHY) + ret = mii_link_ok(&dm->mii); + else + ret = dm9000_read_locked(dm, DM9000_NSR) & NSR_LINKST ? 1 : 0; + + return ret; } #define DM_EEPROM_MAGIC (0x444D394B)