[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20130205174113.GJ4720@opensource.wolfsonmicro.com>
Date: Tue, 5 Feb 2013 17:41:13 +0000
From: Mark Brown <broonie@...nsource.wolfsonmicro.com>
To: Russell King - ARM Linux <linux@....linux.org.uk>
Cc: Linus Walleij <linus.walleij@...aro.org>,
Cyril Chemparathy <cyril@...com>, balbi@...com,
Sergei Shtylyov <sshtylyov@...sta.com>,
Linux Documentation List <linux-doc@...r.kernel.org>,
Lindgren <tony@...mide.com>, Vinod Koul <vinod.koul@...el.com>,
"Nair, Sandeep" <sandeep_n@...com>, Chris Ball <cjb@...top.org>,
Matt Porter <mporter@...com>, Arnd Bergmann <arnd@...db.de>,
Devicetree Discuss <devicetree-discuss@...ts.ozlabs.org>,
Rob Herring <rob.herring@...xeda.com>,
Linux OMAP List <linux-omap@...r.kernel.org>,
ARM Kernel List <linux-arm-kernel@...ts.infradead.org>,
Linux DaVinci Kernel List
<davinci-linux-open-source@...ux.davincidsp.com>,
"Cousson, Benoit" <b-cousson@...com>,
Linux MMC List <linux-mmc@...r.kernel.org>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>,
Landley <rob@...dley.net>, Dan Williams <djbw@...com>,
Linux SPI Devel List
<spi-devel-general@...ts.sourceforge.net>
Subject: Re: [PATCH v7 01/10] ARM: davinci: move private EDMA API to
arm/common
On Tue, Feb 05, 2013 at 05:06:28PM +0000, Russell King - ARM Linux wrote:
> On Tue, Feb 05, 2013 at 04:47:05PM +0000, Mark Brown wrote:
> > On Tue, Feb 05, 2013 at 05:21:48PM +0100, Linus Walleij wrote:
> > > For IRQ mode, use the completion callback to push each cookie
> > > to NAPI, and thus let the IRQ drive the traffic.
> > The whole purpose of NAPI is to avoid taking interrupts for completion
> > of transfers. Anything that generates interrupts when NAPI is in
> > polling mode is defeating the point.
> Yes, but you're missing one very important point. If your DMA engine
> is decoupled from the network device, and the DMA engine relies upon
> interrupts to queue further transfers to move data into RAM, then you
> have two options:
> 1. Receive these interrupts so you can update the DMA engine for
> further data transfer.
> 2. Don't receive these interrupts, and cause the network device to
> error out with a FIFO overrun because its DMA requests have not
> been serviced. (which may raise an interrupt.)
There's still the third option of just implementing a non-NAPI driver,
though I guess we've now built so much infrastructure on top of NAPI
that it's still useful to pretend we can disable interrupts.
Download attachment "signature.asc" of type "application/pgp-signature" (837 bytes)
Powered by blists - more mailing lists