diff options
author | Mark Brown <broonie@kernel.org> | 2015-01-27 12:54:24 -0500 |
---|---|---|
committer | Mark Brown <broonie@kernel.org> | 2015-01-27 12:54:24 -0500 |
commit | 8d23dd9c66456686d85805100204c0a4db584425 (patch) | |
tree | 6bbd2b6b7326ef2ab62f06e09b894ffe1cef4e2c | |
parent | a7834aa932e245a13fb2da59471672ca9bf3a7a5 (diff) | |
parent | bdfbf2550d85b0e645a0bb9b3abd3b0a5448eacf (diff) |
Merge branch 'fix/rt5677' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound into asoc-w-codec
-rw-r--r-- | sound/soc/codecs/rt5677.c | 18 |
1 files changed, 14 insertions, 4 deletions
diff --git a/sound/soc/codecs/rt5677.c b/sound/soc/codecs/rt5677.c index ff7cce941106..8f0bd86481d3 100644 --- a/sound/soc/codecs/rt5677.c +++ b/sound/soc/codecs/rt5677.c | |||
@@ -2178,10 +2178,14 @@ static int rt5677_set_pll1_event(struct snd_soc_dapm_widget *w, | |||
2178 | struct rt5677_priv *rt5677 = snd_soc_codec_get_drvdata(codec); | 2178 | struct rt5677_priv *rt5677 = snd_soc_codec_get_drvdata(codec); |
2179 | 2179 | ||
2180 | switch (event) { | 2180 | switch (event) { |
2181 | case SND_SOC_DAPM_POST_PMU: | 2181 | case SND_SOC_DAPM_PRE_PMU: |
2182 | regmap_update_bits(rt5677->regmap, RT5677_PLL1_CTRL2, 0x2, 0x2); | 2182 | regmap_update_bits(rt5677->regmap, RT5677_PLL1_CTRL2, 0x2, 0x2); |
2183 | break; | ||
2184 | |||
2185 | case SND_SOC_DAPM_POST_PMU: | ||
2183 | regmap_update_bits(rt5677->regmap, RT5677_PLL1_CTRL2, 0x2, 0x0); | 2186 | regmap_update_bits(rt5677->regmap, RT5677_PLL1_CTRL2, 0x2, 0x0); |
2184 | break; | 2187 | break; |
2188 | |||
2185 | default: | 2189 | default: |
2186 | return 0; | 2190 | return 0; |
2187 | } | 2191 | } |
@@ -2196,10 +2200,14 @@ static int rt5677_set_pll2_event(struct snd_soc_dapm_widget *w, | |||
2196 | struct rt5677_priv *rt5677 = snd_soc_codec_get_drvdata(codec); | 2200 | struct rt5677_priv *rt5677 = snd_soc_codec_get_drvdata(codec); |
2197 | 2201 | ||
2198 | switch (event) { | 2202 | switch (event) { |
2199 | case SND_SOC_DAPM_POST_PMU: | 2203 | case SND_SOC_DAPM_PRE_PMU: |
2200 | regmap_update_bits(rt5677->regmap, RT5677_PLL2_CTRL2, 0x2, 0x2); | 2204 | regmap_update_bits(rt5677->regmap, RT5677_PLL2_CTRL2, 0x2, 0x2); |
2205 | break; | ||
2206 | |||
2207 | case SND_SOC_DAPM_POST_PMU: | ||
2201 | regmap_update_bits(rt5677->regmap, RT5677_PLL2_CTRL2, 0x2, 0x0); | 2208 | regmap_update_bits(rt5677->regmap, RT5677_PLL2_CTRL2, 0x2, 0x0); |
2202 | break; | 2209 | break; |
2210 | |||
2203 | default: | 2211 | default: |
2204 | return 0; | 2212 | return 0; |
2205 | } | 2213 | } |
@@ -2307,9 +2315,11 @@ static int rt5677_vref_event(struct snd_soc_dapm_widget *w, | |||
2307 | 2315 | ||
2308 | static const struct snd_soc_dapm_widget rt5677_dapm_widgets[] = { | 2316 | static const struct snd_soc_dapm_widget rt5677_dapm_widgets[] = { |
2309 | SND_SOC_DAPM_SUPPLY("PLL1", RT5677_PWR_ANLG2, RT5677_PWR_PLL1_BIT, | 2317 | SND_SOC_DAPM_SUPPLY("PLL1", RT5677_PWR_ANLG2, RT5677_PWR_PLL1_BIT, |
2310 | 0, rt5677_set_pll1_event, SND_SOC_DAPM_POST_PMU), | 2318 | 0, rt5677_set_pll1_event, SND_SOC_DAPM_PRE_PMU | |
2319 | SND_SOC_DAPM_POST_PMU), | ||
2311 | SND_SOC_DAPM_SUPPLY("PLL2", RT5677_PWR_ANLG2, RT5677_PWR_PLL2_BIT, | 2320 | SND_SOC_DAPM_SUPPLY("PLL2", RT5677_PWR_ANLG2, RT5677_PWR_PLL2_BIT, |
2312 | 0, rt5677_set_pll2_event, SND_SOC_DAPM_POST_PMU), | 2321 | 0, rt5677_set_pll2_event, SND_SOC_DAPM_PRE_PMU | |
2322 | SND_SOC_DAPM_POST_PMU), | ||
2313 | 2323 | ||
2314 | /* ASRC */ | 2324 | /* ASRC */ |
2315 | SND_SOC_DAPM_SUPPLY_S("I2S1 ASRC", 1, RT5677_ASRC_1, 0, 0, NULL, 0), | 2325 | SND_SOC_DAPM_SUPPLY_S("I2S1 ASRC", 1, RT5677_ASRC_1, 0, 0, NULL, 0), |