[alsa-devel] How the dma interrupt handlers have been registered in ALSA?

Pharaoh . pharaoh137 at gmail.com
Wed May 30 14:36:12 CEST 2007

On 5/29/07, Takashi Iwai <tiwai at suse.de> wrote:
> At Mon, 28 May 2007 21:41:59 +0530,
> Pharaoh . wrote:
> >
> > Hi
> >
> > I am referring omap-alsa-dma.c and the related codec files. We usually
> > register the IRQ handler by calling
> > request_irq() function but in this mentioned files the IRQ handler etc is
> > defined but it is not registered anywhere i.e. request_irq is not used
> > anywhere. Is there any other way of registering irq handlers? The irq
> > handlers address is passed to
> > omap_request_dma, but there also it is not registered. I am missing the
> > entire thing?
> There is nothing but request_irq().  So, it implies that your code
> flow isn't somehow correct.  Missing probe hooks?
> Takashi

Apologies if this sounds novice, but after referring the omap specific
alsa drivers, I wasn't able to locate any request_irq function getting
called, I have traced the omap_request_dma function but it also
doesn't explicaitly call request_irq, but in the file
arch/arm/plat-omap/dma.c there is call arch_initcall(omap_init_dma),
which calls request_irq. As per my humble knowledge this is part of
board specific init and is done at boot time, so does this mean that
it is done only once at boot time and any driver specific callback is
called from this function? Can anyone throw more light on this, or
answer my basic question why there is no request_irq in any of the
omap specific files? I am using 2.6.19 kernel.

More information about the Alsa-devel mailing list