[alsa-devel] [PATCH] ASoC: add xtensa xtfpga I2S interface and platform

Takashi Iwai tiwai at suse.de
Tue Oct 28 17:47:15 CET 2014


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


More information about the Alsa-devel mailing list