From: Francois Romieu Date: Wed, 3 Sep 2008 22:17:12 +0000 (+0200) Subject: r8169: wake up the PHY of the 8168 X-Git-Tag: v2.6.28-rc1~717^2^2~13 X-Git-Url: http://pilppa.com/gitweb/?a=commitdiff_plain;h=a2de6b89b74b28052e293fdb39975a5a03c432e0;p=linux-2.6-omap-h63xx.git r8169: wake up the PHY of the 8168 This is typically needed when some other OS puts the PHY to sleep due to the disabling of WOL options in the BIOS of the system. Signed-off-by: Francois Romieu Tested-by: Chiaki Ishikawa Cc: Edward Hsu Cc: RyanKao --- diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 59fbc64d7c4..9881563898d 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -865,9 +865,13 @@ static int rtl8169_set_speed_xmii(struct net_device *dev, auto_nego |= ADVERTISE_PAUSE_CAP | ADVERTISE_PAUSE_ASYM; - if ((tp->mac_version == RTL_GIGA_MAC_VER_12) || - (tp->mac_version == RTL_GIGA_MAC_VER_17)) { - /* Vendor specific (0x1f) and reserved (0x0e) MII registers. */ + if ((tp->mac_version == RTL_GIGA_MAC_VER_11) || + (tp->mac_version == RTL_GIGA_MAC_VER_12) || + (tp->mac_version >= RTL_GIGA_MAC_VER_17)) { + /* + * Wake up the PHY. + * Vendor specific (0x1f) and reserved (0x0e) MII registers. + */ mdio_write(ioaddr, 0x1f, 0x0000); mdio_write(ioaddr, 0x0e, 0x0000); }