From 97a6ef513f45b40c635159c9b4b88f3eaa1498d2 Mon Sep 17 00:00:00 2001 From: John Crispin Date: Wed, 30 Aug 2017 09:02:39 +0200 Subject: mediatek: various additional ethernet fixes * fixes default affinity * adds a napi watchdog - we were seeing stalled TX queues * adds up/down locking Signed-off-by: John Crispin --- .../mediatek/patches-4.9/0059-eth-fixes.patch | 32 ++++++---------------- 1 file changed, 8 insertions(+), 24 deletions(-) (limited to 'target/linux/mediatek/patches-4.9/0059-eth-fixes.patch') diff --git a/target/linux/mediatek/patches-4.9/0059-eth-fixes.patch b/target/linux/mediatek/patches-4.9/0059-eth-fixes.patch index 61b4b2615c..4991c52d36 100644 --- a/target/linux/mediatek/patches-4.9/0059-eth-fixes.patch +++ b/target/linux/mediatek/patches-4.9/0059-eth-fixes.patch @@ -1,5 +1,7 @@ ---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c -+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c +Index: linux-4.9.44/drivers/net/ethernet/mediatek/mtk_eth_soc.c +=================================================================== +--- linux-4.9.44.orig/drivers/net/ethernet/mediatek/mtk_eth_soc.c ++++ linux-4.9.44/drivers/net/ethernet/mediatek/mtk_eth_soc.c @@ -24,6 +24,7 @@ #include @@ -400,28 +402,10 @@ eth->netdev[id]->netdev_ops = &mtk_netdev_ops; eth->netdev[id]->base_addr = (unsigned long)eth->base; -@@ -2584,15 +2665,19 @@ static int mtk_probe(struct platform_dev - goto err_deinit_hw; - } - -+ cpumask_set_cpu(1, ð->affinity_mask[1]); -+ cpumask_set_cpu(0, ð->affinity_mask[2]); - err = devm_request_irq(eth->dev, eth->irq[1], mtk_handle_irq_tx, 0, - dev_name(eth->dev), eth); - if (err) - goto err_free_dev; -+ irq_set_affinity_hint(eth->irq[1], ð->affinity_mask[1]); - - err = devm_request_irq(eth->dev, eth->irq[2], mtk_handle_irq_rx, 0, - dev_name(eth->dev), eth); - if (err) - goto err_free_dev; -+ irq_set_affinity_hint(eth->irq[2], ð->affinity_mask[2]); - - err = mtk_mdio_init(eth); - if (err) ---- a/drivers/net/ethernet/mediatek/mtk_eth_soc.h -+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.h +Index: linux-4.9.44/drivers/net/ethernet/mediatek/mtk_eth_soc.h +=================================================================== +--- linux-4.9.44.orig/drivers/net/ethernet/mediatek/mtk_eth_soc.h ++++ linux-4.9.44/drivers/net/ethernet/mediatek/mtk_eth_soc.h @@ -80,7 +80,6 @@ /* CDMP Ingress Control Register */ -- cgit v1.2.3