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

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 2/19/20 12:53 PM, Kai Vehmanen wrote:
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.

I also tried to find a fix in parallel with Kai's work, but no luck. First I am not sure why we need to add a 'module' state in addition to the existing module ref-counting, and the 'opened' state management looks too simple. revert-and-revisit seems like the best course of action indeed.




[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Pulse Audio]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux