[alsa-devel] struct snd_soc_codec_driver nested and duplicated fields

Christian N cnegris01 at gmail.com
Thu Oct 13 16:06:14 CEST 2016


Hi

I'm tryng to understand serveral links between asoc structures to
avoid bad codec/machine driver implementation (TEF663x for iMX6).

I saw that several structures have pointer to structures which one
could have pointer to the first one, and serveral fields are
duplicated.

Some examples

snd_soc_codec_driver->probe
snd_soc_codec_driver->snd_soc_dapm_widget

but

snd_soc_codec_driver->snd_soc_component_driver->probe (duplicated?)
snd_soc_codec_driver->snd_soc_component_driver->snd_soc_dapm_widget
(duplicated?)

and
 snd_soc_codec_driver->snd_soc_component_driver->snd_soc_dapm_widget->snd_soc_dapm_context->
snd_soc_component (hey is recursive???!!!!!)

I would like figure out why several fields are duplicated in
structures that could be nested.
Is a compatibility issue?

thanks in advance


More information about the Alsa-devel mailing list