From mboxrd@z Thu Jan 1 00:00:00 1970 From: David Miller Subject: Re: [PATCH v2] sh_eth: use RNC mode for R8A7790/R87791 Date: Mon, 02 Jun 2014 11:53:03 -0700 (PDT) Message-ID: <20140602.115303.1283021229124256917.davem@davemloft.net> References: <1401729456-23514-1-git-send-email-ben.dooks@codethink.co.uk> Mime-Version: 1.0 Content-Type: Text/Plain; charset=us-ascii Content-Transfer-Encoding: 7bit Cc: linux-kernel@codethink.co.uk, netdev@vger.kernel.org, nobuhiro.iwamatsu.yj@renesas.com, magnus.damn@opensource.se, horms@verge.net.au, yoshihiro.shimoda.uh@renesas.com, cm-hiep@jinso.co.jp To: ben.dooks@codethink.co.uk Return-path: Received: from shards.monkeyblade.net ([149.20.54.216]:35745 "EHLO shards.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1753008AbaFBSxG (ORCPT ); Mon, 2 Jun 2014 14:53:06 -0400 In-Reply-To: <1401729456-23514-1-git-send-email-ben.dooks@codethink.co.uk> Sender: netdev-owner@vger.kernel.org List-ID: From: Ben Dooks Date: Mon, 2 Jun 2014 18:17:36 +0100 > The current behaviour of the sh_eth driver is not to use the RNC bit > for the receive ring. This means that every packet recieved is not only > generating an IRQ but it also stops the receive ring DMA as well until > the driver re-enables it after unloading the packet. > > This means that a number of the following errors are generated due to > the receive packet FIFO overflowing due to nowhere to put packets: > > net eth0: Receive FIFO Overflow > > I have tested the RMCR_RNC configuration with NFS root filesystem and > the driver has not failed yet. There are further test reports from > Sergei Shtylov and others for both the R8A7790 and R8A7791. > > There is also feedback fron Cao Minh Hiep[1] which reports the > same issue in (http://comments.gmane.org/gmane.linux.network/316285) > showing this fixes issues with losing UDP datagrams under iperf. > > Tested-by: Sergei Shtylyov > Signed-off-by: Ben Dooks Given the description, I can't fathom a reason why this wouldn't be set always, for every chip. Do some chips not implement this bit at all?