From cfb86bf491e3cf6baad2f164fae4880185f0e22c Mon Sep 17 00:00:00 2001 From: Nitin Pai Date: Mon, 2 Jul 2012 14:02:31 +0530 Subject: asoc: tegra: i2s: Fixes for audio_clock_2x rate audio_clock_2x parent needs to be set first before changing the rate, else it will not work. Bug 1019017 Signed-off-by: Nitin Pai Reviewed-on: http://git-master/r/116682 (cherry picked from commit fdc4da6d96e7be4aa2accf098de48543e745cf11) Change-Id: I93aeb1afed8732e8a1b1cff4ab03b9a9f654804f Reviewed-on: http://git-master/r/118250 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Bob Johnston Reviewed-by: Varun Wadekar --- sound/soc/tegra/tegra30_i2s.c | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'sound/soc') diff --git a/sound/soc/tegra/tegra30_i2s.c b/sound/soc/tegra/tegra30_i2s.c index 72e64470008a..03ddff5e8b95 100644 --- a/sound/soc/tegra/tegra30_i2s.c +++ b/sound/soc/tegra/tegra30_i2s.c @@ -557,6 +557,13 @@ static int tegra30_i2s_hw_params(struct snd_pcm_substream *substream, return ret; } + ret = clk_set_parent(clk_get_parent(i2s->clk_audio_2x), + i2s->clk_i2s_sync); + if (ret) { + dev_err(dev, "Can't set parent of audio2x clock\n"); + return ret; + } + ret = clk_set_rate(i2s->clk_audio_2x, i2sclock); if (ret) { dev_err(dev, "Can't set I2S sync clock rate\n"); -- cgit v1.2.3