diff options
author | Kai Vehmanen <kai.vehmanen@linux.intel.com> | 2020-02-20 11:49:55 +0200 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2020-02-24 21:48:24 +0000 |
commit | d2aaa8d8bfba93237ac944ee058fb98e2c2ef983 (patch) | |
tree | 0f19bcd8993bf9c7fda39692ffe0edb3eba24ac4 /sound/soc/dwc | |
parent | 1640c8df0bbac9e5156132e24c0f0a932c2b2865 (diff) |
ASoC: soc-pcm: fix state tracking error in snd_soc_component_open/close()
ASoC component open/close and snd_soc_component_module_get/put are called
independently for each component-substream pair, so the logic added in
commit dd03907bf129 ("ASoC: soc-pcm: call snd_soc_component_open/close()
once") was not sufficient and led to PCM playback and module unload errors.
Implement handling of failures directly in soc_pcm_components_open(),
so that any successfully opened components are closed upon error with
other components. This allows to clean up error handling in
soc_pcm_open() without adding more state tracking.
Fixes: dd03907bf129 ("ASoC: soc-pcm: call snd_soc_component_open/close() once")
Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Tested-by: Dmitry Osipenko <digetx@gmail.com>
Link: https://lore.kernel.org/r/20200220094955.16968-1-kai.vehmanen@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound/soc/dwc')
0 files changed, 0 insertions, 0 deletions