From 8d9ead46d01e85c4e6e6ca66027a555255f86e16 Mon Sep 17 00:00:00 2001 From: chalkin Date: Mon, 5 Aug 2024 21:51:00 +0800 Subject: [PATCH 19/62] ASoC: qcom: sm8250: Add primary tdm support Signed-off-by: Jiali Chen --- sound/soc/qcom/sm8250.c | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/sound/soc/qcom/sm8250.c b/sound/soc/qcom/sm8250.c index a383f74c5187..2804fcfbeaa4 100644 --- a/sound/soc/qcom/sm8250.c +++ b/sound/soc/qcom/sm8250.c @@ -175,6 +175,22 @@ static int sm8250_snd_startup(struct snd_pcm_substream *substream) } } break; + case PRIMARY_TDM_RX_0: + codec_dai_fmt |= SND_SOC_DAIFMT_NB_NF | SND_SOC_DAIFMT_DSP_A; + snd_soc_dai_set_sysclk(cpu_dai, + Q6AFE_LPASS_CLK_ID_PRI_TDM_IBIT , + TDM_BCLK_RATE, SNDRV_PCM_STREAM_PLAYBACK); + + for_each_rtd_codec_dais(rtd, j, codec_dai) { + ret = snd_soc_dai_set_fmt(codec_dai, codec_dai_fmt); + snd_soc_dai_set_sysclk(codec_dai, 0, TDM_BCLK_RATE, SNDRV_PCM_STREAM_PLAYBACK); + if (ret < 0) { + dev_err(rtd->dev, "TDM fmt err:%d\n", ret); + return ret; + } + } + break; + default: break; } -- 2.47.3