OSDN Git Service

ASoC: rt5665: move set_sysclk to codec level
authorBard Liao <bardliao@realtek.com>
Thu, 9 Mar 2017 11:31:14 +0000 (19:31 +0800)
committerMark Brown <broonie@kernel.org>
Mon, 13 Mar 2017 16:56:13 +0000 (16:56 +0000)
Move set_sysclk to codec level and people can use it at both
codec and dai level.

Signed-off-by: Bard Liao <bardliao@realtek.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/codecs/rt5665.c

index b36e217..1d00c60 100644 (file)
@@ -4188,10 +4188,9 @@ static int rt5665_set_dai_fmt(struct snd_soc_dai *dai, unsigned int fmt)
        return 0;
 }
 
-static int rt5665_set_dai_sysclk(struct snd_soc_dai *dai,
-               int clk_id, unsigned int freq, int dir)
+static int rt5665_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 rt5665_priv *rt5665 = snd_soc_codec_get_drvdata(codec);
        unsigned int reg_val = 0;
 
@@ -4217,7 +4216,7 @@ static int rt5665_set_dai_sysclk(struct snd_soc_dai *dai,
        rt5665->sysclk = freq;
        rt5665->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 is %dHz and clock id is %d\n", freq, clk_id);
 
        return 0;
 }
@@ -4401,7 +4400,6 @@ static int rt5665_resume(struct snd_soc_codec *codec)
 static const struct snd_soc_dai_ops rt5665_aif_dai_ops = {
        .hw_params = rt5665_hw_params,
        .set_fmt = rt5665_set_dai_fmt,
-       .set_sysclk = rt5665_set_dai_sysclk,
        .set_tdm_slot = rt5665_set_tdm_slot,
        .set_bclk_ratio = rt5665_set_bclk_ratio,
 };
@@ -4512,6 +4510,7 @@ static struct snd_soc_codec_driver soc_codec_dev_rt5665 = {
                .dapm_routes = rt5665_dapm_routes,
                .num_dapm_routes = ARRAY_SIZE(rt5665_dapm_routes),
        },
+       .set_sysclk = rt5665_set_codec_sysclk,
        .set_pll = rt5665_set_codec_pll,
 };