[PATCH] ASoC: soc-pcm: Revert "call snd_soc_component_open/close() once"

Kai Vehmanen kai.vehmanen at linux.intel.com
Wed Feb 19 19:53:06 CET 2020


Hey,

On Wed, 19 Feb 2020, Kai Vehmanen wrote:

> ASoC component open/close and snd_soc_component_module_get/put are
> called independently for each component-substream pair, so the logic
> in the reverted patch was not sufficient and led to PCM playback and
> module unload errors.

I tried to keep part of the original patch at first, but I kept hitting 
new issues either in component load, or in module unload-reload flow.
Thanks to Pierre and Ranjani for early reviews.

So in the end I ended up with a full revert. This at least works on all 
SOF device topologies I tested with. 

At the root of the problem is that component open is called with multiple 
substreams and driver open (and close) should be called for each substream 
as well. This also caused problems to the added module refcounting logic.. 
so that is reverted as well.

Br, Kai


More information about the Alsa-devel mailing list