Skip to content

Commit

Permalink
Browse files Browse the repository at this point in the history
ipq40xx: enable RX hash / CTAG TX offloading for single-phy
This re-enables offloading features disabled by
commit 9da2b56 ("ipq40xx: fix ethernet vlan double tagging").

Single-PHY devices use port-based VLANs on the switch, therefore no
S-TAG magic is involved here. Re-enabling these features restores
throughput back to 950 Mbit/s.

Reported-by: Jannis Pinter <jannis@pinterjann.is>
Signed-off-by: David Bauer <mail@david-bauer.net>
  • Loading branch information
blocktrron committed Nov 1, 2020
1 parent 4c5eb10 commit e73d866
Showing 1 changed file with 9 additions and 0 deletions.
Expand Up @@ -978,11 +978,20 @@ static int edma_axi_probe(struct platform_device *pdev)
edma_netdev[i]->wanted_features = NETIF_F_HW_CSUM | NETIF_F_SG |
NETIF_F_TSO | NETIF_F_GRO;

if (of_property_read_bool(np, "qcom,single-phy") && edma_cinfo->num_gmac == 1)
edma_netdev[i]->features |= NETIF_F_HW_VLAN_CTAG_TX;

#ifdef CONFIG_RFS_ACCEL
edma_netdev[i]->features |= NETIF_F_NTUPLE;
edma_netdev[i]->hw_features |= NETIF_F_NTUPLE;
edma_netdev[i]->vlan_features |= NETIF_F_NTUPLE;
edma_netdev[i]->wanted_features |= NETIF_F_NTUPLE;
if (of_property_read_bool(np, "qcom,single-phy") && edma_cinfo->num_gmac == 1) {
edma_netdev[i]->features |= NETIF_F_RXHASH;
edma_netdev[i]->hw_features |= NETIF_F_RXHASH;
edma_netdev[i]->vlan_features |= NETIF_F_RXHASH;
edma_netdev[i]->wanted_features |= NETIF_F_RXHASH;
}
#endif
edma_set_ethtool_ops(edma_netdev[i]);

Expand Down

0 comments on commit e73d866

Please sign in to comment.