[alsa-devel] ASoC vs non-ASoC: 2 pcm driver questions.

Hi,
While unifying pxa2xx-pcm drivers (ASoC and plain one) I've encountered the following differences in snd_pcm_open:
1. ASoC one uses snd_soc_set_runtime_hardware() function instead of just copying runtime->hw = pxa2xx_pcm_hardware; However the major difference is that snd_soc_set_runtime_hardware() doesn't initialise few fields which are set later in generic soc_pcm_open(). Can I drop this call and use the same assignment as in non-asoc driver.
2. To enforce some constraints ASoC driver uses generic snd_pcm_hw_constraint_step() instead of hand-written rule functions. Can this be also unified or there are some hidden differencies?

On Mon, 2008-09-08 at 06:53 +0000, Dmitry Baryshkov wrote:
Hi,
While unifying pxa2xx-pcm drivers (ASoC and plain one) I've encountered the following differences in snd_pcm_open:
- ASoC one uses snd_soc_set_runtime_hardware() function instead of
just copying runtime->hw = pxa2xx_pcm_hardware; However the major difference is that snd_soc_set_runtime_hardware() doesn't initialise few fields which are set later in generic soc_pcm_open(). Can I drop this call and use the same assignment as in non-asoc driver.
Do you mean snd_soc_set_runtime_hw_params() ?
Give it a try.
- To enforce some constraints ASoC driver uses generic
snd_pcm_hw_constraint_step() instead of hand-written rule functions. Can this be also unified or there are some hidden differencies?
This could also be unified, can't think of any reason why they should not.
Liam
participants (2)
-
Dmitry Baryshkov
-
Liam Girdwood