aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/realtek/files-5.10/drivers/net
diff options
context:
space:
mode:
authorBirger Koblitz <git@birger-koblitz.de>2021-09-05 20:22:59 +0200
committerJohn Crispin <john@phrozen.org>2021-10-09 08:25:05 +0200
commit2ab4d4029386849664d152949188c40590cfdd5f (patch)
tree00387e79a1b8c4e0b19c032682924f8714dc25cd /target/linux/realtek/files-5.10/drivers/net
parent9eab76c84e311605e8cc197a0bc4bd53340678c3 (diff)
downloadupstream-2ab4d4029386849664d152949188c40590cfdd5f.tar.gz
upstream-2ab4d4029386849664d152949188c40590cfdd5f.tar.bz2
upstream-2ab4d4029386849664d152949188c40590cfdd5f.zip
realtek: Increase maximum RX ring buffer length
Increase the maximum ring buffer length in order to improve performance on RTL839x devices. Signed-off-by: Birger Koblitz <git@birger-koblitz.de>
Diffstat (limited to 'target/linux/realtek/files-5.10/drivers/net')
-rw-r--r--target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c b/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c
index 4711efbcdc..dfec2e55ee 100644
--- a/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c
+++ b/target/linux/realtek/files-5.10/drivers/net/ethernet/rtl838x_eth.c
@@ -30,11 +30,12 @@ extern struct rtl83xx_soc_info soc_info;
* Maximum number of RX rings is 8 on RTL83XX and 32 on the 93XX
* The ring is assigned by switch based on packet/port priortity
* Maximum number of TX rings is 2, Ring 2 being the high priority
- * ring on the RTL93xx SoCs. MAX_RING_SIZE * RING_BUFFER gives
- * the memory used for the ring buffer.
+ * ring on the RTL93xx SoCs. MAX_RXLEN gives the maximum length
+ * for an RX ring, MAX_ENTRIES the maximum number of entries
+ * available in total for all queues.
*/
#define MAX_RXRINGS 32
-#define MAX_RXLEN 100
+#define MAX_RXLEN 200
#define MAX_ENTRIES (200 * 8)
#define TXRINGS 2
#define TXRINGLEN 160
@@ -437,7 +438,7 @@ static irqreturn_t rtl83xx_net_irq(int irq, void *dev_id)
/* RX buffer overrun */
if (status & 0x000ff) {
- pr_info("RX buffer overrun: status %x, mask: %x\n",
+ pr_debug("RX buffer overrun: status %x, mask: %x\n",
status, sw_r32(priv->r->dma_if_intr_msk));
sw_w32(status, priv->r->dma_if_intr_sts);
rtl838x_rb_cleanup(priv, status & 0xff);