Skip to content

Commit 855a9d4

Browse files
committed
ASoC: SOF: ipc4-topology: Set FAST_MODE for host copier in compr mode
FAST_MODE allows the host DMA to work in opportunistic, free running mode, which matches with the bitstream nature of compressed devices. Signed-off-by: Peter Ujfalusi <peter.ujfalusi@linux.intel.com>
1 parent 4442f5f commit 855a9d4

2 files changed

Lines changed: 8 additions & 0 deletions

File tree

sound/soc/sof/ipc4-topology.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -687,6 +687,9 @@ static int sof_ipc4_widget_setup_pcm(struct snd_sof_widget *swidget)
687687
sps->dsp_max_burst_size_in_ms = 1;
688688
}
689689

690+
if (spcm->pcm.compress)
691+
ipc4_copier->data.copier_feature_mask |= BIT(SOF_IPC4_COPIER_FAST_MODE);
692+
690693
skip_gtw_cfg:
691694
ipc4_copier->gtw_attr = kzalloc(sizeof(*ipc4_copier->gtw_attr), GFP_KERNEL);
692695
if (!ipc4_copier->gtw_attr) {

sound/soc/sof/ipc4-topology.h

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,11 @@ struct sof_copier_gateway_cfg {
219219
uint32_t config_data[];
220220
};
221221

222+
/* bit definition in copier_feature_mask */
223+
enum sof_ipc4_copier_feature {
224+
SOF_IPC4_COPIER_FAST_MODE = 0, /* free running mode of host copier */
225+
};
226+
222227
/**
223228
* struct sof_ipc4_copier_data - IPC data for copier
224229
* @base_config: Base configuration including input audio format

0 commit comments

Comments
 (0)