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>
This commit is contained in:
Mark Brown 2013-03-05 12:07:16 +08:00
parent 9a412cdb1a
commit 576411be20
1 changed files with 11 additions and 0 deletions

View File

@ -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);