mirror_ubuntu-kernels/sound/soc/sof
Peter Ujfalusi 6f2a43e3d1
ASoC: SOF: sof-audio: Skip unprepare for in-use widgets on error rollback
If the ipc_prepare() callback fails for a module instance, on error rewind
we must skip the ipc_unprepare() call for ones that has positive use count.

The positive use count means that the module instance is in active use, it
cannot be unprepared.

The issue affects capture direction paths with branches (single dai with
multiple PCMs), the affected widgets are in the shared part of the paths.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com>
Link: https://lore.kernel.org/r/20240612121203.15468-1-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
2024-06-12 18:26:30 +01:00
..
amd ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
imx ASoC: SOF: add missing MODULE_DESCRIPTION() 2024-05-27 21:19:27 +01:00
intel ASoC: SOF: Intel: hda-dai: remove skip_tlv label 2024-06-03 15:59:14 +01:00
mediatek ASoC: SOF: add missing MODULE_DESCRIPTION() 2024-05-27 21:19:27 +01:00
xtensa ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
compress.c ASoC: SOF: Use no_reply calls for TX 2023-04-20 12:51:45 +01:00
control.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
core.c ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
debug.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
fw-file-profile.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
iomem-utils.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc3-control.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc3-dtrace.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc3-loader.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc3-pcm.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc3-priv.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc3-topology.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc3.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-control.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-fw-reg.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-loader.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-mtrace.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-pcm.c ASoC: SOF: ipc4-topology/pcm: Rename sof_ipc4_copier_is_single_format() 2024-05-30 12:33:30 +01:00
ipc4-priv.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-telemetry.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-telemetry.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc4-topology.c ASoC: SOF: ipc4-topology: Fix nhlt configuration blob 2024-05-30 14:33:14 +01:00
ipc4-topology.h ASoC: SOF: ipc4-topology/pcm: Rename sof_ipc4_copier_is_single_format() 2024-05-30 12:33:30 +01:00
ipc4.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ipc.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
Kconfig ASoC: SOF: core: Implement IPC version fallback if firmware files are missing 2023-11-29 13:25:15 +00:00
loader.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
Makefile ASoC: SOF: Use *-y instead of *-objs in Makefile 2024-05-08 11:39:30 +09:00
nocodec.c ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
ops.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
ops.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
pcm.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
pm.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-acpi-dev.c ASoC: SOF: add missing MODULE_DESCRIPTION() 2024-05-27 21:19:27 +01:00
sof-acpi-dev.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-audio.c ASoC: SOF: sof-audio: Skip unprepare for in-use widgets on error rollback 2024-06-12 18:26:30 +01:00
sof-audio.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-client-ipc-flood-test.c ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
sof-client-ipc-kernel-injector.c ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
sof-client-ipc-msg-injector.c ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
sof-client-probes-ipc3.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-client-probes-ipc4.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-client-probes.c ASoC: SOF: reorder MODULE_ definitions 2024-05-27 21:19:26 +01:00
sof-client-probes.h ASoC: SOF: IPC4: probes: Implement IPC4 ops for probes client device 2022-10-31 13:20:22 +00:00
sof-client.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-client.h ASoC: SOF: Add IPC3 Kernel Injector 2023-06-09 10:44:40 +01:00
sof-of-dev.c ASoC: SOF: add missing MODULE_DESCRIPTION() 2024-05-27 21:19:27 +01:00
sof-of-dev.h ASoC: SOF: Move sof_of_machine_select() to core.c from sof-of-dev.c 2023-12-04 17:02:15 +00:00
sof-pci-dev.c ASoC: SOF: add missing MODULE_DESCRIPTION() 2024-05-27 21:19:27 +01:00
sof-pci-dev.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-priv.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
sof-utils.c ASoC: SOF: add missing MODULE_DESCRIPTION() 2024-05-27 21:19:27 +01:00
sof-utils.h ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
stream-ipc.c ASoC: SOF: stream-ipc: remove unnecessary MODULE_LICENSE 2024-05-27 21:19:24 +01:00
topology.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00
trace.c ASoC: SOF: Intel: clarify Copyright information 2024-05-06 23:59:35 +09:00