Merge remote-tracking branches 'asoc/topic/rt5614', 'asoc/topic/rt5645', 'asoc/topic...
[sfrench/cifs-2.6.git] / sound / soc / codecs / rt5670.c
index a5f15a104c47a7558405380f8603490e7bd9b921..0ec7985ed306612db13bd6314ccc94733e835cce 100644 (file)
@@ -2022,7 +2022,6 @@ static const struct snd_soc_dapm_route rt5670_dapm_routes[] = {
 
        { "Stereo1 ADC MIXL", NULL, "Sto1 ADC MIXL" },
        { "Stereo1 ADC MIXL", NULL, "ADC Stereo1 Filter" },
-       { "ADC Stereo1 Filter", NULL, "PLL1", is_sys_clk_from_pll },
 
        { "Stereo1 ADC MIXR", NULL, "Sto1 ADC MIXR" },
        { "Stereo1 ADC MIXR", NULL, "ADC Stereo1 Filter" },
@@ -2061,7 +2060,6 @@ static const struct snd_soc_dapm_route rt5670_dapm_routes[] = {
 
        { "Stereo2 ADC MIXL", NULL, "Stereo2 ADC LR Mux" },
        { "Stereo2 ADC MIXL", NULL, "ADC Stereo2 Filter" },
-       { "ADC Stereo2 Filter", NULL, "PLL1", is_sys_clk_from_pll },
 
        { "Stereo2 ADC MIXR", NULL, "Sto2 ADC MIXR" },
        { "Stereo2 ADC MIXR", NULL, "ADC Stereo2 Filter" },
@@ -2444,10 +2442,9 @@ static int rt5670_set_dai_fmt(struct snd_soc_dai *dai, unsigned int fmt)
        return 0;
 }
 
-static int rt5670_set_dai_sysclk(struct snd_soc_dai *dai,
-               int clk_id, unsigned int freq, int dir)
+static int rt5670_set_codec_sysclk(struct snd_soc_codec *codec, int clk_id,
+                                  int source, unsigned int freq, int dir)
 {
-       struct snd_soc_codec *codec = dai->codec;
        struct rt5670_priv *rt5670 = snd_soc_codec_get_drvdata(codec);
        unsigned int reg_val = 0;
 
@@ -2471,7 +2468,7 @@ static int rt5670_set_dai_sysclk(struct snd_soc_dai *dai,
        if (clk_id != RT5670_SCLK_S_RCCLK)
                rt5670->sysclk_src = clk_id;
 
-       dev_dbg(dai->dev, "Sysclk is %dHz and clock id is %d\n", freq, clk_id);
+       dev_dbg(codec->dev, "Sysclk : %dHz clock id : %d\n", freq, clk_id);
 
        return 0;
 }
@@ -2723,7 +2720,6 @@ static int rt5670_resume(struct snd_soc_codec *codec)
 static const struct snd_soc_dai_ops rt5670_aif_dai_ops = {
        .hw_params = rt5670_hw_params,
        .set_fmt = rt5670_set_dai_fmt,
-       .set_sysclk = rt5670_set_dai_sysclk,
        .set_tdm_slot = rt5670_set_tdm_slot,
        .set_pll = rt5670_set_dai_pll,
 };
@@ -2776,6 +2772,7 @@ static struct snd_soc_codec_driver soc_codec_dev_rt5670 = {
        .resume = rt5670_resume,
        .set_bias_level = rt5670_set_bias_level,
        .idle_bias_off = true,
+       .set_sysclk = rt5670_set_codec_sysclk,
        .component_driver = {
                .controls               = rt5670_snd_controls,
                .num_controls           = ARRAY_SIZE(rt5670_snd_controls),