From: Francois Romieu Date: Sat, 8 Nov 2008 11:06:09 +0000 (+0100) Subject: r8169: wake up the PHY of the 8168 X-Git-Tag: v2.6.27.6~25 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=366c22cf9d9dd7cdcbb7c14bed44e91018672cda;p=thirdparty%2Fkernel%2Fstable.git r8169: wake up the PHY of the 8168 Upstream as a2de6b89b74b28052e293fdb39975a5a03c432e0 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 Signed-off-by: Greg Kroah-Hartman --- diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 7e026a63e08fe..39c17bb350743 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c @@ -740,9 +740,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); }