[alsa-devel] I don't understand snd_pcm_ops

Timur Tabi timur at freescale.com
Tue May 22 18:17:08 CEST 2007

Ash Willis wrote:

> Have you read "Writing an ALSA driver"? It generally describes ALSA drivers as
> they relate to PCI, and how to write them, but it does a good job at explaining
> the general ALSA driver architecture.

Unfortunately, most of my confusion stems from ASoC-specific issues.  For instance, that 
document says I should call snd_pcm_new().  But that's not true for ASoC drivers, because 
I should really call snd_soc_new_pcms(), which in turn calls soc_new_pcm(), and *that* 
function calls snd_pcm_new().  However, none of that explains why it's the *codec* driver 
that is calling these functions.  I don't understand why the codec driver is registering 
new PCMs.  Shouldn't the PCM driver be registering the codec?

Timur Tabi
Linux Kernel Developer @ Freescale

More information about the Alsa-devel mailing list