On Tue, 10 Nov 2015, Caleb Crome wrote:
I have a system that has separate DACs and ADCs, as opposed to bidirectional CODECS.
The ADCs have a snd_soc_dai_driver structure that have a .capture field defined with a .rates parameter, and the DACs have a snd_soc_dai_driver structure that have a .playback field defined with a .rates parameter.
However, the ADCs have no .playback.rates, and the DACs have no .capture.rates. Even though the ADC can record at a given rate and the DAC can play at that same rate, the soc_pcm_init_runtime_hw function calculates the rates in this loop: ...
I had the same problem earlier this year. I submitted a patch which takes care of this that was applied a little over a month ago:
http://mailman.alsa-project.org/pipermail/alsa-devel/2015-September/097729.h...
/Ricard