From mboxrd@z Thu Jan 1 00:00:00 1970 From: Tom Rini Date: Fri, 29 Aug 2014 10:41:56 -0400 Subject: [U-Boot] net: cpsw: am335x: Drop constant link checking from rx/tx path's In-Reply-To: <1408958779-1709-1-git-send-email-sr@denx.de> References: <1408958779-1709-1-git-send-email-sr@denx.de> Message-ID: <20140829144156.GL19374@bill-the-cat> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On Mon, Aug 25, 2014 at 11:26:19AM +0200, Stefan Roese wrote: > We noticed on the DXR2 platform (AM335x with a SMSC LAN9303 switch connected > to the CPSW MAC) that the network performance in U-Boot is quite poor. Only > when the transfer is started without a cable connected, and the cable is > plugged after the first timeout "T" occured, an increased in performance > can be seen. Debugging has revealed, that the cpsw driver has constant > link checking builtin into the rx and tx functions. This results in the > bad performance and seems to be unnecessary. The link has already been > checked in the init function, before the transfer is started. This usually > is sufficient. > > BTW: I have seen no other network driver in U-Boot so far, that constantly > checks for link in the rx / tx functions. > > The performance numbers on the DXR2 board are: > > 0.56 MiB/s cpsw_check_link() in rx and tx path > 0.87 MiB/s cpsw_check_link() only in tx path > 1.0 MiB/s cpsw_check_link() only in rx path > 2.7 MiB/s no cpsw_check_link() in rx and tx path > > So with this patch the network performance on DXR2 increases from 0.56 > to 2.7 MiB/s (nearly 5 times as fast). > > Signed-off-by: Stefan Roese > Tested-by: Samuel Egli > Tested-by: Heiko Schocher > Cc: Vladimir Koutny > Cc: Mugunthan V N > Cc: Joe Hershberger > Cc: Tom Rini Applied to u-boot/master, thanks! -- Tom -------------- next part -------------- A non-text attachment was scrubbed... Name: not available Type: application/pgp-signature Size: 836 bytes Desc: Digital signature URL: