diff --git a/asoc/lahaina.c b/asoc/lahaina.c index b50581987b2f..13aed6d54666 100644 --- a/asoc/lahaina.c +++ b/asoc/lahaina.c @@ -4569,6 +4569,7 @@ static int msm_be_hw_params_fixup(struct snd_soc_pcm_runtime *rtd, case MSM_BACKEND_DAI_RX_CDC_DMA_RX_1: case MSM_BACKEND_DAI_RX_CDC_DMA_RX_2: case MSM_BACKEND_DAI_RX_CDC_DMA_RX_3: + case MSM_BACKEND_DAI_RX_CDC_DMA_RX_5: case MSM_BACKEND_DAI_RX_CDC_DMA_RX_6: idx = msm_cdc_dma_get_idx_from_beid(dai_link->id); param_set_mask(params, SNDRV_PCM_HW_PARAM_FORMAT, @@ -6878,6 +6879,21 @@ static struct snd_soc_dai_link msm_rx_tx_cdc_dma_be_dai_links[] = { .ops = &msm_cdc_dma_be_ops, SND_SOC_DAILINK_REG(rx_dma_rx3), }, + { + .name = LPASS_BE_RX_CDC_DMA_RX_5, + .stream_name = "RX CDC DMA5 Playback", +#if IS_ENABLED(CONFIG_AUDIO_QGKI) + .dynamic_be = 1, +#endif /* CONFIG_AUDIO_QGKI */ + .no_pcm = 1, + .dpcm_playback = 1, + .id = MSM_BACKEND_DAI_RX_CDC_DMA_RX_5, + .be_hw_params_fixup = msm_be_hw_params_fixup, + .ignore_pmdown_time = 1, + .ignore_suspend = 1, + .ops = &msm_cdc_dma_be_ops, + SND_SOC_DAILINK_REG(rx_dma_rx5), + }, { .name = LPASS_BE_RX_CDC_DMA_RX_6, .stream_name = "RX CDC DMA6 Playback", diff --git a/asoc/msm_dailink.h b/asoc/msm_dailink.h index bfc56d41da7f..97d0f88d611b 100644 --- a/asoc/msm_dailink.h +++ b/asoc/msm_dailink.h @@ -523,6 +523,12 @@ SND_SOC_DAILINK_DEFS(rx_dma_rx3, COMP_CODEC("wcd938x_codec", "wcd938x_cdc")), DAILINK_COMP_ARRAY(COMP_PLATFORM("msm-pcm-routing"))); +SND_SOC_DAILINK_DEFS(rx_dma_rx5, + DAILINK_COMP_ARRAY(COMP_CPU("msm-dai-cdc-dma-dev.45114")), + DAILINK_COMP_ARRAY(COMP_CODEC("bolero_codec", "rx_macro_rx5"), + COMP_CODEC("wcd938x_codec", "wcd938x_cdc")), + DAILINK_COMP_ARRAY(COMP_PLATFORM("msm-pcm-routing"))); + SND_SOC_DAILINK_DEFS(rx_dma_rx6, DAILINK_COMP_ARRAY(COMP_CPU("msm-dai-cdc-dma-dev.45116")), DAILINK_COMP_ARRAY(COMP_CODEC("bolero_codec", "rx_macro_rx6"),