summaryrefslogtreecommitdiff
path: root/sound
diff options
context:
space:
mode:
authorNikesh Oswal <noswal@nvidia.com>2011-12-30 16:03:03 +0530
committerVarun Wadekar <vwadekar@nvidia.com>2012-01-04 11:44:46 +0530
commitf37e8ecb37b05ec0794d17bb1e7f461135d387f6 (patch)
treebf56d75a35ba8a834627cdb7a057a64977e79096 /sound
parent8de2ce3de0a3463516c30a6d6891d6716218e819 (diff)
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 <noswal@nvidia.com> Reviewed-on: http://git-master/r/72739 Reviewed-by: Automatic_Commit_Validation_User Reviewed-by: Sumit Bhattacharya <sumitb@nvidia.com> Reviewed-by: Bharat Nihalani <bnihalani@nvidia.com>
Diffstat (limited to 'sound')
-rw-r--r--sound/soc/tegra/tegra_max98088.c7
1 files changed, 4 insertions, 3 deletions
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 ;
}