diff options
Diffstat (limited to 'drivers/net')
-rw-r--r-- | drivers/net/r8169.c | 8 |
1 files changed, 3 insertions, 5 deletions
diff --git a/drivers/net/r8169.c b/drivers/net/r8169.c index 3ddd33936aa..40bcb82d911 100644 --- a/drivers/net/r8169.c +++ b/drivers/net/r8169.c | |||
@@ -435,6 +435,7 @@ enum rtl_register_content { | |||
435 | AcceptMulticast = 0x04, | 435 | AcceptMulticast = 0x04, |
436 | AcceptMyPhys = 0x02, | 436 | AcceptMyPhys = 0x02, |
437 | AcceptAllPhys = 0x01, | 437 | AcceptAllPhys = 0x01, |
438 | #define RX_CONFIG_ACCEPT_MASK 0x3f | ||
438 | 439 | ||
439 | /* TxConfigBits */ | 440 | /* TxConfigBits */ |
440 | TxInterFrameGapShift = 24, | 441 | TxInterFrameGapShift = 24, |
@@ -3943,11 +3944,8 @@ err_pm_runtime_put: | |||
3943 | static void rtl_rx_close(struct rtl8169_private *tp) | 3944 | static void rtl_rx_close(struct rtl8169_private *tp) |
3944 | { | 3945 | { |
3945 | void __iomem *ioaddr = tp->mmio_addr; | 3946 | void __iomem *ioaddr = tp->mmio_addr; |
3946 | u32 rxcfg = RTL_R32(RxConfig); | ||
3947 | 3947 | ||
3948 | rxcfg &= ~(AcceptErr | AcceptRunt | AcceptBroadcast | AcceptMulticast | | 3948 | RTL_W32(RxConfig, RTL_R32(RxConfig) & ~RX_CONFIG_ACCEPT_MASK); |
3949 | AcceptMyPhys | AcceptAllPhys); | ||
3950 | RTL_W32(RxConfig, rxcfg); | ||
3951 | } | 3949 | } |
3952 | 3950 | ||
3953 | static void rtl8169_hw_reset(struct rtl8169_private *tp) | 3951 | static void rtl8169_hw_reset(struct rtl8169_private *tp) |
@@ -5586,7 +5584,7 @@ static void rtl_set_rx_mode(struct net_device *dev) | |||
5586 | 5584 | ||
5587 | spin_lock_irqsave(&tp->lock, flags); | 5585 | spin_lock_irqsave(&tp->lock, flags); |
5588 | 5586 | ||
5589 | tmp = RTL_R32(RxConfig) | rx_mode; | 5587 | tmp = (RTL_R32(RxConfig) & ~RX_CONFIG_ACCEPT_MASK) | rx_mode; |
5590 | 5588 | ||
5591 | if (tp->mac_version > RTL_GIGA_MAC_VER_06) { | 5589 | if (tp->mac_version > RTL_GIGA_MAC_VER_06) { |
5592 | u32 data = mc_filter[0]; | 5590 | u32 data = mc_filter[0]; |