summaryrefslogtreecommitdiffstats
path: root/sound
diff options
context:
space:
mode:
authorKai Vehmanen <kai.vehmanen@linux.intel.com>2023-03-16 16:14:58 +0200
committerMark Brown <broonie@kernel.org>2023-03-17 13:05:52 +0000
commit37ec7ab49f951ef8c38102328b84d3dc7155dc68 (patch)
tree7d409fc1007a0d045848af7a1179ea1588f40dcc /sound
parent279e52d6b9f366f9930a0f90ee84e7d0a6a27b26 (diff)
downloadlinux-stable-37ec7ab49f951ef8c38102328b84d3dc7155dc68.tar.gz
linux-stable-37ec7ab49f951ef8c38102328b84d3dc7155dc68.tar.bz2
linux-stable-37ec7ab49f951ef8c38102328b84d3dc7155dc68.zip
ASoC: SOF: ipc4-topology: use common helper function in copier prepare
Use the ipc4_set_fmt_mask() helper function instead of open-coding the logic in multiple places. Signed-off-by: Kai Vehmanen <kai.vehmanen@linux.intel.com> Reviewed-by: Péter Ujfalusi <peter.ujfalusi@linux.intel.com> Reviewed-by: Ranjani Sridharan <ranjani.sridharan@linux.intel.com> Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com> Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com> Link: https://lore.kernel.org/r/20230316141458.13940-3-peter.ujfalusi@linux.intel.com Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/sof/ipc4-topology.c18
1 files changed, 3 insertions, 15 deletions
diff --git a/sound/soc/sof/ipc4-topology.c b/sound/soc/sof/ipc4-topology.c
index cf438f32b4ed..4fba8ada9a06 100644
--- a/sound/soc/sof/ipc4-topology.c
+++ b/sound/soc/sof/ipc4-topology.c
@@ -1363,21 +1363,9 @@ sof_ipc4_prepare_copier_module(struct snd_sof_widget *swidget,
out_sample_valid_bits =
SOF_IPC4_AUDIO_FORMAT_CFG_V_BIT_DEPTH(copier_data->out_format.fmt_cfg);
snd_mask_none(fmt);
- switch (out_sample_valid_bits) {
- case 16:
- snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S16_LE);
- break;
- case 24:
- snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S24_LE);
- break;
- case 32:
- snd_mask_set_format(fmt, SNDRV_PCM_FORMAT_S32_LE);
- break;
- default:
- dev_err(sdev->dev, "invalid sample frame format %d\n",
- params_format(pipeline_params));
- return -EINVAL;
- }
+ ret = ipc4_set_fmt_mask(fmt, out_sample_valid_bits);
+ if (ret)
+ return ret;
/*
* Set the gateway dma_buffer_size to 2ms buffer size to meet the FW expectation. In the