net: ethernet: mtk_eth_soc: fix tx throughput regression with direct 1G links
authorFelix Fietkau <nbd@nbd.name>
Fri, 24 Mar 2023 14:04:04 +0000 (15:04 +0100)
committerJakub Kicinski <kuba@kernel.org>
Wed, 29 Mar 2023 06:23:50 +0000 (23:23 -0700)
Using the QDMA tx scheduler to throttle tx to line speed works fine for
switch ports, but apparently caused a regression on non-switch ports.

Based on a number of tests, it seems that this throttling can be safely
dropped without re-introducing the issues on switch ports that the
tx scheduling changes resolved.

Link: https://lore.kernel.org/netdev/trinity-92c3826f-c2c8-40af-8339-bc6d0d3ffea4-1678213958520@3c-app-gmx-bs16/
Fixes: f63959c7eec3 ("net: ethernet: mtk_eth_soc: implement multi-queue support for per-port queues")
Reported-by: Frank Wunderlich <frank-w@public-files.de>
Reported-by: Daniel Golle <daniel@makrotopia.org>
Tested-by: Daniel Golle <daniel@makrotopia.org>
Signed-off-by: Felix Fietkau <nbd@nbd.name>
Link: https://lore.kernel.org/r/20230324140404.95745-1-nbd@nbd.name
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/mediatek/mtk_eth_soc.c

index 3cb43623d3dbe9d2677bee3fd067c4ced5c07585..1835d92afe4b2f5641f2474d422ff493615158b2 100644 (file)
@@ -763,8 +763,6 @@ static void mtk_mac_link_up(struct phylink_config *config,
                break;
        }
 
-       mtk_set_queue_speed(mac->hw, mac->id, speed);
-
        /* Configure duplex */
        if (duplex == DUPLEX_FULL)
                mcr |= MAC_MCR_FORCE_DPX;