From bc6b129bcda2125a37840c835672ad73b2052edf Mon Sep 17 00:00:00 2001 From: Pyun YongHyeon Date: Thu, 19 Jan 2012 20:13:16 +0000 Subject: [PATCH] Fix a logic error which resulted in putting PHY into sleep when WOL is active. If WOL is active driver should not put PHY into sleep. This change makes WOL work on RTL8168E. --- sys/dev/re/if_re.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index df7eda03663..0142308ec0c 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -3808,7 +3808,7 @@ re_setwol(struct rl_softc *sc) /* Config register write done. */ CSR_WRITE_1(sc, RL_EECMD, RL_EEMODE_OFF); - if ((ifp->if_capenable & IFCAP_WOL) != 0 && + if ((ifp->if_capenable & IFCAP_WOL) == 0 && (sc->rl_flags & RL_FLAG_PHYWAKE_PM) != 0) CSR_WRITE_1(sc, RL_PMCH, CSR_READ_1(sc, RL_PMCH) & ~0x80); /*