summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFrancois Romieu <romieu@fr.zoreil.com>2008-11-08 12:06:09 +0100
committerGreg Kroah-Hartman <gregkh@suse.de>2008-11-13 09:55:59 -0800
commit366c22cf9d9dd7cdcbb7c14bed44e91018672cda (patch)
treefa6dde874d29222ed712d9c8b154c07cbe8abf0c
parent6269b8494da80250422ed8ce4e6ee7126c0010aa (diff)
downloadlwn-366c22cf9d9dd7cdcbb7c14bed44e91018672cda.tar.gz
lwn-366c22cf9d9dd7cdcbb7c14bed44e91018672cda.zip
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 <romieu@fr.zoreil.com> Tested-by: Chiaki Ishikawa <chiaki.ishikawa@ubin.jp> Cc: Edward Hsu <edward_hsu@realtek.com.tw> Cc: RyanKao <ryankao@realtek.com.tw> Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
-rw-r--r--drivers/net/r8169.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c
index 7e026a63e08f..39c17bb35074 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);
}