diff options
author | Pyun YongHyeon <yongari@FreeBSD.org> | 2014-10-21 01:31:24 +0000 |
---|---|---|
committer | Pyun YongHyeon <yongari@FreeBSD.org> | 2014-10-21 01:31:24 +0000 |
commit | b8333e454650033303fa1c940901f1a21715a1c5 (patch) | |
tree | 19a5fe34a418149f7f63405ea177c851f5e79d0f /sys/dev/re | |
parent | a5045426dbeec7b03fa2dce8c7c37f65604cc763 (diff) | |
download | src-b8333e454650033303fa1c940901f1a21715a1c5.tar.gz src-b8333e454650033303fa1c940901f1a21715a1c5.zip |
It seems multicast filtering of RTL8168F does not work. Workaround
the silicon bug by accepting any multicast packets.
PR: 193488
MFC After: 1 week
Notes
Notes:
svn path=/head/; revision=273359
Diffstat (limited to 'sys/dev/re')
-rw-r--r-- | sys/dev/re/if_re.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/sys/dev/re/if_re.c b/sys/dev/re/if_re.c index bb4e6727c9c5..e27a81276df1 100644 --- a/sys/dev/re/if_re.c +++ b/sys/dev/re/if_re.c @@ -703,6 +703,12 @@ re_set_rxmode(struct rl_softc *sc) rxfilt |= RL_RXCFG_RX_MULTI; } + if (sc->rl_hwrev->rl_rev == RL_HWREV_8168F) { + /* Disable multicast filtering due to silicon bug. */ + hashes[0] = 0xffffffff; + hashes[1] = 0xffffffff; + } + done: CSR_WRITE_4(sc, RL_MAR0, hashes[0]); CSR_WRITE_4(sc, RL_MAR4, hashes[1]); |