This patch series adds support for specifying the source of REFCLK directly for Wolfson Arizona based devices. This should allow for improved performance by using the highest available REFCLK source. Should the REFCLK source not be directly specified then the patches will default to the older behaviour of using the 32kHz clock for REFCLK.
REFCLK is configured using a call to snd_soc_codec_set_pll specifying one of the new WM51xx_FLLx_REFCLK defines as the pll_id. It is valid to clear the SYNCCLK source by setting the source to ARIZONA_FLL_SRC_NONE, however once a REFCLK source it can only be replaced with another valid REFCLK source.
Charles Keepax (8): ASoC: arizona: Move selection of FLL REFCLK into init ASoC: arizona: Tidy up SYNCCLK selection and cache values ASoC: arizona: Factor out check for enabled FLL ASoC: arizona: Factor out FLL disable ASoC: arizona: Factor out FLL enable ASoC: arizona: Improve suppression of noop FLL updates ASoC: arizona: Add support for directly setting the FLL REFCLK ASoC: arizona: Add convience define for clearing SYNCCLK
sound/soc/codecs/arizona.c | 191 ++++++++++++++++++++++++++++++-------------- sound/soc/codecs/arizona.h | 9 ++- sound/soc/codecs/wm5102.c | 6 ++ sound/soc/codecs/wm5102.h | 6 +- sound/soc/codecs/wm5110.c | 6 ++ sound/soc/codecs/wm5110.h | 6 +- 6 files changed, 158 insertions(+), 66 deletions(-)