From 4b8cdb9dbd31ff4baee9efe8c8e19996164a6c8d Mon Sep 17 00:00:00 2001 From: Hayes Wang Date: Tue, 6 Sep 2011 16:55:14 +0800 Subject: [PATCH] --- yaml --- r: 264051 b: refs/heads/master c: 106633897e086e1b47126996aac1a427eb80eb1b h: refs/heads/master i: 264049: 5ee8c20191ba9966bd2e9c4a9f0d6081b8d5d75d 264047: a5bc39ed8aa37309a85068aa9bd5e92423ffe6ec v: v3 --- [refs] | 2 +- trunk/drivers/net/r8169.c | 10 +++++++++- 2 files changed, 10 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 12c96f76ca21..c3dc907b2bcd 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: bbb8af75d0a6a5138ff00fe0b1b95c4824effd55 +refs/heads/master: 106633897e086e1b47126996aac1a427eb80eb1b diff --git a/trunk/drivers/net/r8169.c b/trunk/drivers/net/r8169.c index b55fba7f3a04..78c1d5832792 100644 --- a/trunk/drivers/net/r8169.c +++ b/trunk/drivers/net/r8169.c @@ -3320,9 +3320,16 @@ static void r810x_phy_power_up(struct rtl8169_private *tp) static void r810x_pll_power_down(struct rtl8169_private *tp) { + void __iomem *ioaddr = tp->mmio_addr; + if (__rtl8169_get_wol(tp) & WAKE_ANY) { rtl_writephy(tp, 0x1f, 0x0000); rtl_writephy(tp, MII_BMCR, 0x0000); + + if (tp->mac_version == RTL_GIGA_MAC_VER_29 || + tp->mac_version == RTL_GIGA_MAC_VER_30) + RTL_W32(RxConfig, RTL_R32(RxConfig) | AcceptBroadcast | + AcceptMulticast | AcceptMyPhys); return; } @@ -3418,7 +3425,8 @@ static void r8168_pll_power_down(struct rtl8169_private *tp) rtl_writephy(tp, MII_BMCR, 0x0000); if (tp->mac_version == RTL_GIGA_MAC_VER_32 || - tp->mac_version == RTL_GIGA_MAC_VER_33) + tp->mac_version == RTL_GIGA_MAC_VER_33 || + tp->mac_version == RTL_GIGA_MAC_VER_34) RTL_W32(RxConfig, RTL_R32(RxConfig) | AcceptBroadcast | AcceptMulticast | AcceptMyPhys); return;