mirror of
https://github.com/openwrt/openwrt.git
synced 2024-12-28 09:39:00 +00:00
797d46c34d
Move stmmac backport fix patches from ipq806x to generic backport directory as they got merged upstream and they fix wide performance regression. This will eventually cause performance increase on any user of the stmmac driver. Generic patch automatically refreshed with make target/linux/refresh. Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
39 lines
1.5 KiB
Diff
39 lines
1.5 KiB
Diff
From 039550960a2235cfe2dfaa773df9f98f8da31a0c Mon Sep 17 00:00:00 2001
|
|
From: Christian Marangi <ansuelsmth@gmail.com>
|
|
Date: Wed, 18 Oct 2023 14:35:50 +0200
|
|
Subject: [PATCH 3/3] net: stmmac: increase TX coalesce timer to 5ms
|
|
|
|
Commit 8fce33317023 ("net: stmmac: Rework coalesce timer and fix
|
|
multi-queue races") decreased the TX coalesce timer from 40ms to 1ms.
|
|
|
|
This caused some performance regression on some target (regression was
|
|
reported at least on ipq806x) in the order of 600mbps dropping from
|
|
gigabit handling to only 200mbps.
|
|
|
|
The problem was identified in the TX timer getting armed too much time.
|
|
While this was fixed and improved in another commit, performance can be
|
|
improved even further by increasing the timer delay a bit moving from
|
|
1ms to 5ms.
|
|
|
|
The value is a good balance between battery saving by prevending too
|
|
much interrupt to be generated and permitting good performance for
|
|
internet oriented devices.
|
|
|
|
Signed-off-by: Christian Marangi <ansuelsmth@gmail.com>
|
|
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
|
|
---
|
|
drivers/net/ethernet/stmicro/stmmac/common.h | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
--- a/drivers/net/ethernet/stmicro/stmmac/common.h
|
|
+++ b/drivers/net/ethernet/stmicro/stmmac/common.h
|
|
@@ -286,7 +286,7 @@ struct stmmac_safety_stats {
|
|
#define MIN_DMA_RIWT 0x10
|
|
#define DEF_DMA_RIWT 0xa0
|
|
/* Tx coalesce parameters */
|
|
-#define STMMAC_COAL_TX_TIMER 1000
|
|
+#define STMMAC_COAL_TX_TIMER 5000
|
|
#define STMMAC_MAX_COAL_TX_TICK 100000
|
|
#define STMMAC_TX_MAX_FRAMES 256
|
|
#define STMMAC_TX_FRAMES 25
|