summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorInha Song <ideal.song@samsung.com>2015-07-02 21:11:17 +0900
committerSeung-Woo Kim <sw0312.kim@samsung.com>2016-12-14 13:46:31 +0900
commit987325373b1b488fea4ff8d64f6910ea7432e226 (patch)
tree1dd553a08604a0e3546d5e5e54b0f12cc03b3c1b /sound
parent26a70bd5a0fa0ab36648d5356d92947365627327 (diff)
downloadlinux-exynos-987325373b1b488fea4ff8d64f6910ea7432e226.tar.gz
linux-exynos-987325373b1b488fea4ff8d64f6910ea7432e226.tar.bz2
linux-exynos-987325373b1b488fea4ff8d64f6910ea7432e226.zip
LOCAL / ASoC: samsung: Add SYSCLK stop in stop_sysclk for reset base rate
This patch add SYSCLK stop in stop_sysclk function for set base rate. In arizona codec, pcm hw rate is set reference to base_rate. If not initialize the base_rate, we can't change pcm rate. So it can makes underrun issues. Signed-off-by: Inha Song <ideal.song@samsung.com>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/samsung/tm2_wm5110.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/sound/soc/samsung/tm2_wm5110.c b/sound/soc/samsung/tm2_wm5110.c
index 4c772299f254..2674ba245d00 100644
--- a/sound/soc/samsung/tm2_wm5110.c
+++ b/sound/soc/samsung/tm2_wm5110.c
@@ -138,6 +138,11 @@ static void tm2_stop_sysclk(struct snd_soc_card *card)
if (ret < 0)
dev_err(priv->codec->dev, "Failed to stop FLL: %d\n", ret);
+ ret = snd_soc_codec_set_sysclk(priv->codec, ARIZONA_CLK_SYSCLK,
+ ARIZONA_CLK_SRC_FLL1, 0, 0);
+ if (ret < 0)
+ dev_err(priv->codec->dev, "Failed to stop SYSCLK: %d\n", ret);
+
clk_disable_unprepare(priv->codec_mclk1);
}