From: Vladimir Koutny <vladimir.koutny@streamunlimited.com>
Date: Thu, 28 Nov 2013 09:38:40 +0000 (+0100)
Subject: am335x: cpsw: optimize cpsw_recv to increase network performance
X-Git-Tag: v2025.01-rc5-pxa1908~15565^2~13^2~5
X-Git-Url: http://git.dujemihanovic.xyz/html/%7B%7B%20.RelPermalink%20%7D%7D?a=commitdiff_plain;h=74007b8519f4cfb4aa0f0af397ca71dde04172bf;p=u-boot.git

am335x: cpsw: optimize cpsw_recv to increase network performance

In 48ec5291, only TX path was optimized; this does the same also for RX
path. This results in huge increase of TFTP throughput on custom am3352
board (from 312KiB/s to 1.8MiB/s) and eliminates occasional transfer
timeouts.

Signed-off-by: Vladimir Koutny <vladimir.koutny@streamunlimited.com>
Cc: Mugunthan V N <mugunthanvnm@ti.com>
Cc: Joe Hershberger <joe.hershberger@gmail.com>
Cc: Tom Rini <trini@ti.com>
---

diff --git a/drivers/net/cpsw.c b/drivers/net/cpsw.c
index 39240d9662..50167aab63 100644
--- a/drivers/net/cpsw.c
+++ b/drivers/net/cpsw.c
@@ -914,7 +914,7 @@ static int cpsw_recv(struct eth_device *dev)
 	void *buffer;
 	int len;
 
-	cpsw_update_link(priv);
+	cpsw_check_link(priv);
 
 	while (cpdma_process(priv, &priv->rx_chan, &buffer, &len) >= 0) {
 		invalidate_dcache_range((unsigned long)buffer,