Commit 1a8eb4dc authored by David S. Miller's avatar David S. Miller

[TG3]: Do not set RX_MODE_KEEP_VLAN_TAG when ASF is enabled.

parent 6cd132be
...@@ -5763,14 +5763,20 @@ static void __tg3_set_rx_mode(struct net_device *dev) ...@@ -5763,14 +5763,20 @@ static void __tg3_set_rx_mode(struct net_device *dev)
rx_mode = tp->rx_mode & ~(RX_MODE_PROMISC | rx_mode = tp->rx_mode & ~(RX_MODE_PROMISC |
RX_MODE_KEEP_VLAN_TAG); RX_MODE_KEEP_VLAN_TAG);
/* When ASF is in use, we always keep the RX_MODE_KEEP_VLAN_TAG
* flag clear.
*/
#if TG3_VLAN_TAG_USED #if TG3_VLAN_TAG_USED
if (!tp->vlgrp) if (!tp->vlgrp &&
!(tp->tg3_flags & TG3_FLAG_ENABLE_ASF))
rx_mode |= RX_MODE_KEEP_VLAN_TAG; rx_mode |= RX_MODE_KEEP_VLAN_TAG;
#else #else
/* By definition, VLAN is disabled always in this /* By definition, VLAN is disabled always in this
* case. * case.
*/ */
rx_mode |= RX_MODE_KEEP_VLAN_TAG; if (!(tp->tg3_flags & TG3_FLAG_ENABLE_ASF))
rx_mode |= RX_MODE_KEEP_VLAN_TAG;
#endif #endif
if (dev->flags & IFF_PROMISC) { if (dev->flags & IFF_PROMISC) {
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment