From 98a6eda6316a8f2c5d92983717f148ea9efc8364 Mon Sep 17 00:00:00 2001 From: Surendar Karka Date: Fri, 24 Jan 2020 14:44:13 +0530 Subject: [PATCH] asoc: qcs405: add support to set clock drift AFE driver maintains the clk id for each port. AFE driver has no clue of the master port in META I2S port. Add support to set the clk id for META I2S port. Change-Id: Ic531e94df5503f5ff95364830c5177e9cd86af6c Signed-off-by: Surendar Karka --- asoc/qcs405.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/asoc/qcs405.c b/asoc/qcs405.c index 18dfb82207be..2c4c5fab0392 100644 --- a/asoc/qcs405.c +++ b/asoc/qcs405.c @@ -6279,6 +6279,7 @@ static int msm_meta_mi2s_snd_startup(struct snd_pcm_substream *substream) unsigned int fmt = SND_SOC_DAIFMT_CBS_CFS; struct snd_soc_card *card = rtd->card; struct msm_asoc_mach_data *pdata = snd_soc_card_get_drvdata(card); + u16 port_id = 0; dev_dbg(rtd->card->dev, "%s: substream = %s stream = %d, dai name %s, dai ID %d\n", @@ -6312,6 +6313,13 @@ static int msm_meta_mi2s_snd_startup(struct snd_pcm_substream *substream) meta_mi2s_intf_conf[index].clk_enable[i] = true; if (i == 0) { + port_id = msm_get_port_id(rtd->dai_link->id); + ret = afe_set_clk_id(port_id, + mi2s_clk[member_port].clk_id); + if (ret < 0) + pr_err("%s: afe_set_clk_id fail %d\n", + __func__, ret); + ret = snd_soc_dai_set_fmt(cpu_dai, fmt); if (ret < 0) { pr_err("%s: set fmt cpu dai failed for META_MI2S (%d), err:%d\n",