From f37e8ecb37b05ec0794d17bb1e7f461135d387f6 Mon Sep 17 00:00:00 2001 From: Nikesh Oswal Date: Fri, 30 Dec 2011 16:03:03 +0530 Subject: asoc: tegra: max98088 machine: manage disabling of pll_a clock during suspend if bias is set to off then disable the pll_a and related clock only once this would prevent the kernel warnings Bug: 920911 Change-Id: Id85cba4548894572dfd17e51c8a55707bfba7105 Signed-off-by: Nikesh Oswal Reviewed-on: http://git-master/r/72739 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Sumit Bhattacharya Reviewed-by: Bharat Nihalani --- sound/soc/tegra/tegra_max98088.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'sound') diff --git a/sound/soc/tegra/tegra_max98088.c b/sound/soc/tegra/tegra_max98088.c index 9d1c8d51a0a8..7748d0e071cb 100644 --- a/sound/soc/tegra/tegra_max98088.c +++ b/sound/soc/tegra/tegra_max98088.c @@ -1046,8 +1046,6 @@ static int tegra30_soc_set_bias_level(struct snd_soc_card *card, level != SND_SOC_BIAS_OFF) tegra_asoc_utils_clk_enable(&machine->util_data); - machine->bias_level = level; - return 0; } @@ -1056,9 +1054,12 @@ static int tegra30_soc_set_bias_level_post(struct snd_soc_card *card, { struct tegra_max98088 *machine = snd_soc_card_get_drvdata(card); - if (level == SND_SOC_BIAS_OFF) + if (machine->bias_level != SND_SOC_BIAS_OFF && + level == SND_SOC_BIAS_OFF) tegra_asoc_utils_clk_disable(&machine->util_data); + machine->bias_level = level; + return 0 ; } -- cgit v1.2.3