summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathan Walp <faceprint@faceprint.com>2012-11-01 12:08:47 +0000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2012-11-26 12:14:20 -0800
commit4d3440149ead396a3955f08608e535aed0befbc4 (patch)
tree350c2612a60e40c23c4df14b26753d509022f1ad
parent630a09217dc7c20f7963a2ef785404e80ba98e0b (diff)
r8169: allow multicast packets on sub-8168f chipset.
commit 0481776b7a70f09acf7d9d97c288c3a8403fbfe4 upstream. RTL_GIGA_MAC_VER_35 includes no multicast hardware filter. Signed-off-by: Nathan Walp <faceprint@faceprint.com> Suggested-by: Hayes Wang <hayeswang@realtek.com> Acked-by: Francois Romieu <romieu@fr.zoreil.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/net/ethernet/realtek/r8169.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/net/ethernet/realtek/r8169.c b/drivers/net/ethernet/realtek/r8169.c
index b887856cc2c8..df7bbbad71d0 100644
--- a/drivers/net/ethernet/realtek/r8169.c
+++ b/drivers/net/ethernet/realtek/r8169.c
@@ -4526,6 +4526,9 @@ static void rtl_set_rx_mode(struct net_device *dev)
mc_filter[1] = swab32(data);
}
+ if (tp->mac_version == RTL_GIGA_MAC_VER_35)
+ mc_filter[1] = mc_filter[0] = 0xffffffff;
+
RTL_W32(MAR0 + 4, mc_filter[1]);
RTL_W32(MAR0 + 0, mc_filter[0]);