From mboxrd@z Thu Jan 1 00:00:00 1970 From: Takashi Iwai Subject: Re: [alsa-devel] [PATCH] ASoC: add xtensa xtfpga I2S interface and platform Date: Tue, 28 Oct 2014 17:47:15 +0100 Message-ID: References: <1414436825-19416-1-git-send-email-jcmvbkbc@gmail.com> <544FBD20.5000604@metafoo.de> <20141028160414.GY18557@sirena.org.uk> <544FC6B1.1060002@metafoo.de> Mime-Version: 1.0 (generated by SEMI 1.14.6 - "Maruoka") Content-Type: text/plain; charset=US-ASCII Return-path: In-Reply-To: <544FC6B1.1060002@metafoo.de> Sender: linux-kernel-owner@vger.kernel.org To: Lars-Peter Clausen Cc: Mark Brown , Max Filippov , alsa-devel@alsa-project.org, Mark Rutland , devicetree@vger.kernel.org, Pawel Moll , linux-xtensa@linux-xtensa.org, Ian Campbell , Liam Girdwood , Rob Herring , linux-kernel@vger.kernel.org, Kumar Gala , Grant Likely List-Id: alsa-devel@alsa-project.org At Tue, 28 Oct 2014 17:39:13 +0100, Lars-Peter Clausen wrote: > > On 10/28/2014 05:04 PM, Mark Brown wrote: > > On Tue, Oct 28, 2014 at 04:58:24PM +0100, Lars-Peter Clausen wrote: > >> On 10/27/2014 08:07 PM, Max Filippov wrote: > > > >>> + if (tx_active) { > >>> + if (i2s->tx_fifo_high < 256) > >>> + xtfpga_i2s_refill_fifo(i2s); > >>> + else > >>> + tasklet_hi_schedule(&i2s->refill_fifo); > > > >> Maybe use threaded IRQs instead of IRQ + tasklet. > > > > Is that going to play nicely with the fact that the interrupt can be > > shared and the desire to (AFAICT) do NAPI style stuff with the interrupt > > disabled for long periods? > > > > Threaded interrupts got support for interrupt sharing a while ago, so I > guess yes. I think it will even work better than the tasklet approach. You > can configure the IRQ to disable itself as long as the thread is running. Yes, I tested the threaded irq with PCI drivers using shared irqs and worked well. Takashi