[alsa-devel] Timer interface

Takashi Iwai tiwai at suse.de
Tue Aug 2 12:36:40 CEST 2011


At Tue, 2 Aug 2011 12:33:32 +0200,
Nenad Sljivic wrote:
> 
> Takashi,
> 
> Thanks for your help. My timer device has not been created at the correct
> path (/dev/snd), so I thought it was missing and that I need to implement
> it.  

No, you don't have to implement the timer in your driver explicitly.
A slave-timer instance is created for each PCM stream (see
sound/core/pcm_timer.c), and dmix uses this.
Look at /proc/asound/timers.  On my machine, it shows like:

G0: system timer : 4000.000us (10000000 ticks)
P0-0-0: PCM playback 0-0-0 : SLAVE
P0-0-1: PCM capture 0-0-1 : SLAVE
P0-2-1: PCM capture 0-2-1 : SLAVE
P0-2-3: PCM capture 0-2-3 : SLAVE
P1-3-0: PCM playback 1-3-0 : SLAV


Takashi

> -----Original Message-----
> From: Takashi Iwai [mailto:tiwai at suse.de] 
> Sent: 02 August 2011 07:54
> To: Nenad Sljivic
> Cc: alsa-devel at alsa-project.org
> Subject: Re: [alsa-devel] Timer interface
> 
> At Fri, 29 Jul 2011 17:05:23 +0200,
> Nenad Sljivic wrote:
> > 
> > Hi,
> > 
> > I am extending my ALSA driver in order to support software mixing. Driver
> > currently supports both MMAP and RW access modes. However, I am still not
> > able to use dmix since it requires timer interface to be implemented.
> > My hardware does not generate interrupts at the period boundary but issues
> > timer interrupts at a fixed timer rate. 
> 
> The timer interface is always present with ALSA (kernel) PCM
> interface, thus normally you don't have to implement it.
> Or are you trying to implement without the normal kernel driver but
> with alsa-lib ioplug or such?
> 
> 
> Takashi
> 
> _______________________________________________
> Alsa-devel mailing list
> Alsa-devel at alsa-project.org
> http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
> 


More information about the Alsa-devel mailing list