From mboxrd@z Thu Jan 1 00:00:00 1970 From: Lars-Peter Clausen Subject: Re: [alsa-devel] [PATCH] ASoC: add xtensa xtfpga I2S interface and platform Date: Tue, 28 Oct 2014 17:39:13 +0100 Message-ID: <544FC6B1.1060002@metafoo.de> References: <1414436825-19416-1-git-send-email-jcmvbkbc@gmail.com> <544FBD20.5000604@metafoo.de> <20141028160414.GY18557@sirena.org.uk> Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <20141028160414.GY18557@sirena.org.uk> Sender: linux-kernel-owner@vger.kernel.org To: Mark Brown Cc: Max Filippov , alsa-devel@alsa-project.org, Mark Rutland , devicetree@vger.kernel.org, Pawel Moll , linux-xtensa@linux-xtensa.org, Takashi Iwai , Ian Campbell , Liam Girdwood , Rob Herring , linux-kernel@vger.kernel.org, Kumar Gala , Grant Likely List-Id: devicetree@vger.kernel.org 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. - Lars