]> git.ipfire.org Git - thirdparty/kernel/stable.git/commit
ASoC: SOF: core: Implement IPC version fallback if firmware files are missing
authorPeter Ujfalusi <peter.ujfalusi@linux.intel.com>
Wed, 29 Nov 2023 12:53:27 +0000 (14:53 +0200)
committerMark Brown <broonie@kernel.org>
Wed, 29 Nov 2023 13:25:15 +0000 (13:25 +0000)
commit6c393ebbd74ad341bcfb4e2d0091b2655fad45d0
tree28478af791bbf68bd8e1ab836f82dfa2c30ac81e
parent9b6896538ea71b7c24da1ecb38738a311176f6a8
ASoC: SOF: core: Implement IPC version fallback if firmware files are missing

If a firmware file is missing for the selected IPC type then try to switch
to other supported IPC type and check if that one can be used instead.

If for example a platform is changed to IPC4 as default version but the
given machine does not yet have the needed topology file created then we
will fall back to IPC3 which should have all the needed files.

Relocate the sof_init_environment() to be done at a later phase, in
sof_probe_continue().

This will only have changes in behavior if
CONFIG_SND_SOC_SOF_PROBE_WORK_QUEUE is enabled (Intel HDA platforms) by
not failing the module probe, but it is not going to be different case
compared to for example failed firmware booting or topology loading error.

Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
Reviewed-by: Kai Vehmanen <kai.vehmanen@linux.intel.com>
Link: https://lore.kernel.org/r/20231129125327.23708-14-peter.ujfalusi@linux.intel.com
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/sof/Kconfig
sound/soc/sof/core.c
sound/soc/sof/fw-file-profile.c