diff options
author | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2013-03-05 12:07:16 +0800 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2013-03-06 14:32:17 +0800 |
commit | 576411be200ee0e0801f1fe57d5e7ee787bb1a90 (patch) | |
tree | a8f859ddc3e87237e2a6e9f71c3dea9d22fc0d76 /sound/soc/codecs/arizona.c | |
parent | 9a412cdb1ab0ad984b76debfe562cb7a2c815371 (diff) | |
download | op-kernel-dev-576411be200ee0e0801f1fe57d5e7ee787bb1a90.zip op-kernel-dev-576411be200ee0e0801f1fe57d5e7ee787bb1a90.tar.gz |
ASoC: arizona: Increase FLL synchroniser bandwidth for high frequencies
If we are using a high freqency SYNCCLK then increasing the bandwidth of
the synchroniser improves performance.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound/soc/codecs/arizona.c')
-rw-r--r-- | sound/soc/codecs/arizona.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/sound/soc/codecs/arizona.c b/sound/soc/codecs/arizona.c index 0599ff8..e3aee14 100644 --- a/sound/soc/codecs/arizona.c +++ b/sound/soc/codecs/arizona.c @@ -1157,6 +1157,17 @@ static void arizona_enable_fll(struct arizona_fll *fll, return; } + /* + * Increase the bandwidth if we're not using a low frequency + * sync source. + */ + if (fll->sync_src >= 0 && fll->sync_freq > 100000) + regmap_update_bits(arizona->regmap, fll->base + 0x17, + ARIZONA_FLL1_SYNC_BW, 0); + else + regmap_update_bits(arizona->regmap, fll->base + 0x17, + ARIZONA_FLL1_SYNC_BW, ARIZONA_FLL1_SYNC_BW); + if (!arizona_is_enabled_fll(fll)) pm_runtime_get(arizona->dev); |