summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/mediatek/mtk_eth_soc.c
diff options
context:
space:
mode:
authorFelix Fietkau <nbd@nbd.name>2021-03-24 04:30:54 +0300
committerDavid S. Miller <davem@davemloft.net>2021-03-24 22:48:40 +0300
commit502e84e2382d92654a2ecbc52cdbdb5a11cdcec7 (patch)
treeba2a0dbefc3b6ac72e6c1b783a8b49cd5a54f735 /drivers/net/ethernet/mediatek/mtk_eth_soc.c
parentba37b7caf1ed2395cc84d8f823ff933975f1f789 (diff)
downloadlinux-502e84e2382d92654a2ecbc52cdbdb5a11cdcec7.tar.xz
net: ethernet: mtk_eth_soc: add flow offloading support
This adds support for offloading IPv4 routed flows, including SNAT/DNAT, one VLAN, PPPoE and DSA. Signed-off-by: Felix Fietkau <nbd@nbd.name> Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/ethernet/mediatek/mtk_eth_soc.c')
-rw-r--r--drivers/net/ethernet/mediatek/mtk_eth_soc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mediatek/mtk_eth_soc.c b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
index 67605b9a3916..0396f0db855f 100644
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
@@ -2843,6 +2843,7 @@ static const struct net_device_ops mtk_netdev_ops = {
#ifdef CONFIG_NET_POLL_CONTROLLER
.ndo_poll_controller = mtk_poll_controller,
#endif
+ .ndo_setup_tc = mtk_eth_setup_tc,
};
static int mtk_add_mac(struct mtk_eth *eth, struct device_node *np)
@@ -3104,6 +3105,10 @@ static int mtk_probe(struct platform_device *pdev)
eth->base + MTK_ETH_PPE_BASE, 2);
if (err)
goto err_free_dev;
+
+ err = mtk_eth_offload_init(eth);
+ if (err)
+ goto err_free_dev;
}
for (i = 0; i < MTK_MAX_DEVS; i++) {