ipq40xx: revert usage of VLAN S-TAG
This reverts the usage of the S-Tag for separating LAN and WAN port on
the embedded switch. Many users complained about not being able to
manage C-Tag addition / removal on the switch as well as degraded
performance.
Fixes: commit 9da2b56760 ("ipq40xx: fix ethernet vlan double tagging")
Signed-off-by: David Bauer <mail@david-bauer.net>
This commit is contained in:
parent
b861ae3270
commit
3d79ad3f05
@ -156,10 +156,8 @@ static void edma_configure_rx(struct edma_common_info *edma_cinfo)
|
||||
/* Set Rx FIFO threshold to start to DMA data to host */
|
||||
rxq_ctrl_data = EDMA_FIFO_THRESH_128_BYTE;
|
||||
|
||||
if (!edma_cinfo->is_single_phy) {
|
||||
/* Set RX remove vlan bit */
|
||||
rxq_ctrl_data |= EDMA_RXQ_CTRL_RMV_VLAN;
|
||||
}
|
||||
|
||||
edma_write_reg(EDMA_REG_RXQ_CTRL, rxq_ctrl_data);
|
||||
}
|
||||
@ -1403,12 +1401,10 @@ netdev_tx_t edma_xmit(struct sk_buff *skb,
|
||||
}
|
||||
|
||||
/* Check and mark VLAN tag offload */
|
||||
if (!adapter->edma_cinfo->is_single_phy) {
|
||||
if (unlikely(skb_vlan_tag_present(skb)))
|
||||
flags_transmit |= EDMA_VLAN_TX_TAG_INSERT_FLAG;
|
||||
else if (adapter->default_vlan_tag)
|
||||
flags_transmit |= EDMA_VLAN_TX_TAG_INSERT_DEFAULT_FLAG;
|
||||
}
|
||||
if (unlikely(skb_vlan_tag_present(skb)))
|
||||
flags_transmit |= EDMA_VLAN_TX_TAG_INSERT_FLAG;
|
||||
else if (!adapter->edma_cinfo->is_single_phy && adapter->default_vlan_tag)
|
||||
flags_transmit |= EDMA_VLAN_TX_TAG_INSERT_DEFAULT_FLAG;
|
||||
|
||||
/* Check and mark checksum offload */
|
||||
if (likely(skb->ip_summed == CHECKSUM_PARTIAL))
|
||||
|
||||
@ -956,9 +956,8 @@ static int edma_axi_probe(struct platform_device *pdev)
|
||||
edma_netdev[i]->netdev_ops = &edma_axi_netdev_ops;
|
||||
edma_netdev[i]->max_mtu = 9000;
|
||||
edma_netdev[i]->features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM
|
||||
| NETIF_F_HW_VLAN_CTAG_TX
|
||||
| NETIF_F_HW_VLAN_CTAG_RX | NETIF_F_SG |
|
||||
NETIF_F_TSO | NETIF_F_GRO;
|
||||
NETIF_F_TSO | NETIF_F_GRO | NETIF_F_HW_VLAN_CTAG_TX;
|
||||
edma_netdev[i]->hw_features = NETIF_F_HW_CSUM | NETIF_F_RXCSUM |
|
||||
NETIF_F_HW_VLAN_CTAG_RX
|
||||
| NETIF_F_SG | NETIF_F_TSO | NETIF_F_GRO;
|
||||
@ -968,10 +967,10 @@ static int edma_axi_probe(struct platform_device *pdev)
|
||||
NETIF_F_TSO | NETIF_F_GRO;
|
||||
|
||||
#ifdef CONFIG_RFS_ACCEL
|
||||
edma_netdev[i]->features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
|
||||
edma_netdev[i]->hw_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
|
||||
edma_netdev[i]->vlan_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
|
||||
edma_netdev[i]->wanted_features |= NETIF_F_RXHASH | NETIF_F_NTUPLE;
|
||||
edma_netdev[i]->features |= NETIF_F_NTUPLE | NETIF_F_RXHASH;
|
||||
edma_netdev[i]->hw_features |= NETIF_F_NTUPLE | NETIF_F_RXHASH;
|
||||
edma_netdev[i]->vlan_features |= NETIF_F_NTUPLE | NETIF_F_RXHASH;
|
||||
edma_netdev[i]->wanted_features |= NETIF_F_NTUPLE | NETIF_F_RXHASH;
|
||||
#endif
|
||||
edma_set_ethtool_ops(edma_netdev[i]);
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user