|
@@ -2961,11 +2961,11 @@ static int nv_rx_process_optimized(struct net_device *dev, int limit)
|
|
|
vlanflags = le32_to_cpu(np->get_rx.ex->buflow);
|
|
|
|
|
|
/*
|
|
|
- * There's need to check for NETIF_F_HW_VLAN_RX here.
|
|
|
- * Even if vlan rx accel is disabled,
|
|
|
+ * There's need to check for NETIF_F_HW_VLAN_CTAG_RX
|
|
|
+ * here. Even if vlan rx accel is disabled,
|
|
|
* NV_RX3_VLAN_TAG_PRESENT is pseudo randomly set.
|
|
|
*/
|
|
|
- if (dev->features & NETIF_F_HW_VLAN_RX &&
|
|
|
+ if (dev->features & NETIF_F_HW_VLAN_CTAG_RX &&
|
|
|
vlanflags & NV_RX3_VLAN_TAG_PRESENT) {
|
|
|
u16 vid = vlanflags & NV_RX3_VLAN_TAG_MASK;
|
|
|
|
|
@@ -4816,7 +4816,7 @@ static netdev_features_t nv_fix_features(struct net_device *dev,
|
|
|
netdev_features_t features)
|
|
|
{
|
|
|
/* vlan is dependent on rx checksum offload */
|
|
|
- if (features & (NETIF_F_HW_VLAN_TX|NETIF_F_HW_VLAN_RX))
|
|
|
+ if (features & (NETIF_F_HW_VLAN_CTAG_TX|NETIF_F_HW_VLAN_CTAG_RX))
|
|
|
features |= NETIF_F_RXCSUM;
|
|
|
|
|
|
return features;
|
|
@@ -4828,12 +4828,12 @@ static void nv_vlan_mode(struct net_device *dev, netdev_features_t features)
|
|
|
|
|
|
spin_lock_irq(&np->lock);
|
|
|
|
|
|
- if (features & NETIF_F_HW_VLAN_RX)
|
|
|
+ if (features & NETIF_F_HW_VLAN_CTAG_RX)
|
|
|
np->txrxctl_bits |= NVREG_TXRXCTL_VLANSTRIP;
|
|
|
else
|
|
|
np->txrxctl_bits &= ~NVREG_TXRXCTL_VLANSTRIP;
|
|
|
|
|
|
- if (features & NETIF_F_HW_VLAN_TX)
|
|
|
+ if (features & NETIF_F_HW_VLAN_CTAG_TX)
|
|
|
np->txrxctl_bits |= NVREG_TXRXCTL_VLANINS;
|
|
|
else
|
|
|
np->txrxctl_bits &= ~NVREG_TXRXCTL_VLANINS;
|
|
@@ -4870,7 +4870,7 @@ static int nv_set_features(struct net_device *dev, netdev_features_t features)
|
|
|
spin_unlock_irq(&np->lock);
|
|
|
}
|
|
|
|
|
|
- if (changed & (NETIF_F_HW_VLAN_TX | NETIF_F_HW_VLAN_RX))
|
|
|
+ if (changed & (NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX))
|
|
|
nv_vlan_mode(dev, features);
|
|
|
|
|
|
return 0;
|
|
@@ -5705,7 +5705,8 @@ static int nv_probe(struct pci_dev *pci_dev, const struct pci_device_id *id)
|
|
|
np->vlanctl_bits = 0;
|
|
|
if (id->driver_data & DEV_HAS_VLAN) {
|
|
|
np->vlanctl_bits = NVREG_VLANCONTROL_ENABLE;
|
|
|
- dev->hw_features |= NETIF_F_HW_VLAN_RX | NETIF_F_HW_VLAN_TX;
|
|
|
+ dev->hw_features |= NETIF_F_HW_VLAN_CTAG_RX |
|
|
|
+ NETIF_F_HW_VLAN_CTAG_TX;
|
|
|
}
|
|
|
|
|
|
dev->features |= dev->hw_features;
|
|
@@ -5996,7 +5997,8 @@ static int nv_probe(struct pci_dev *pci_dev, const struct pci_device_id *id)
|
|
|
dev->features & NETIF_F_HIGHDMA ? "highdma " : "",
|
|
|
dev->features & (NETIF_F_IP_CSUM | NETIF_F_SG) ?
|
|
|
"csum " : "",
|
|
|
- dev->features & (NETIF_F_HW_VLAN_RX | NETIF_F_HW_VLAN_TX) ?
|
|
|
+ dev->features & (NETIF_F_HW_VLAN_CTAG_RX |
|
|
|
+ NETIF_F_HW_VLAN_CTAG_TX) ?
|
|
|
"vlan " : "",
|
|
|
dev->features & (NETIF_F_LOOPBACK) ?
|
|
|
"loopback " : "",
|