[alsa-devel] About ALSA SoC cpu/codec asymmetry
Lars-Peter Clausen
lars at metafoo.de
Mon Mar 10 08:14:22 CET 2014
On 03/10/2014 08:03 AM, Kuninori Morimoto wrote:
>
> Hi Lars
>
>> There is already a cpu_name field for the DAI link struct and it is ignored
>> when it is NULL. See
>> http://git.kernel.org/cgit/linux/kernel/git/torvalds/linux.git/tree/sound/soc/soc-core.c#n870
>
> indeed
> Thanks
>
>> I have a patch that makes using cpu_name mandatory for new component
>> drivers. And then we can slowly start to convert old platforms.
>
> Nice !
>
> Basically, my worry is cpu/codec "asymmetry" data structure.
> (Maybe it came from "historical" reason?)
Yep.
>
> I would like to have new "struct snd_soc_cpu" and "snd_soc_register_cpu()"
> instead of current "component" if possible.
> It is understandable.
The patchset I'm working goes the other direction. The idea is to eventually
remove snd_soc_codec and only have snd_soc_component. With modern SoCs the
CPU side isn't just a dumb DAI anymore, but you often have signal routing
and mixing capabilities, sample rate converters, sometimes even a full DSP.
And then there are also those SoCs which have a DAC and/or ADC directly
built-in. This makes them complexity wise similar to the CODEC side and
having things like DAPM and our set of standard predefined kcontrols makes
it easier to manage them.
- Lars
More information about the Alsa-devel
mailing list