Hi Matthias, On Thu, 2016-04-07 at 17:50 +0800, Matthias Brugger wrote: > > On 07/04/16 09:35, PC Liao wrote: > > diff --git a/sound/soc/mediatek/mt8173-rt5650.c b/sound/soc/mediatek/mt8173-rt5650.c > > index bb09bb1..9f56df9 100644 > > --- a/sound/soc/mediatek/mt8173-rt5650.c > > +++ b/sound/soc/mediatek/mt8173-rt5650.c > > @@ -85,12 +85,26 @@ static int mt8173_rt5650_init(struct snd_soc_pcm_runtime *runtime) > > { > > struct snd_soc_card *card = runtime->card; > > struct snd_soc_codec *codec = runtime->codec_dais[0]->codec; > > + const char *codec_dai_capture = runtime->codec_dais[1]->name; > > int ret; > > > > rt5645_sel_asrc_clk_src(codec, > > - RT5645_DA_STEREO_FILTER | > > - RT5645_AD_STEREO_FILTER, > > - RT5645_CLK_SEL_I2S1_ASRC); > > + RT5645_DA_STEREO_FILTER, > > + RT5645_CLK_SEL_I2S1_ASRC); > > + > > + if (!strcmp(codec_dai_capture, "rt5645-aif1")) { > > + rt5645_sel_asrc_clk_src(codec, > > + RT5645_AD_STEREO_FILTER, > > + RT5645_CLK_SEL_I2S1_ASRC); > > + } else if (!strcmp(codec_dai_capture, "rt5645-aif2")) { > > + rt5645_sel_asrc_clk_src(codec, > > + RT5645_AD_STEREO_FILTER, > > + RT5645_CLK_SEL_I2S2_ASRC); > > + } else { > > + dev_err(card->dev, "Can't get the right codec dai\n"); > > + return -EINVAL; > > For compatibility issues we should enable RT5645_CLK_SEL_I2S1_ASRC as > default. BTW in the old version you enabled DA and AD filter while in > the new version you just enable AD filter. What is the reason for that? > > Regards, > Matthias Thanks for comment. I separate rt5645_sel_asrc_clk_src function into two parts. I have and enable DA filter for I2S1 first. Then, I use codec_dai_capture to determine which I2S AD filter I need. Thanks! _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel