ASoC: wm8804: MCLK configuration options, 32-bit
authorDaniel Matuschek <info@crazy-audio.com>
Wed, 15 Jan 2014 20:41:23 +0000 (21:41 +0100)
committerpopcornmix <popcornmix@gmail.com>
Mon, 13 May 2019 23:07:57 +0000 (00:07 +0100)
WM8804 can run with PLL frequencies of 256xfs and 128xfs for most sample
rates. At 192kHz only 128xfs is supported. The existing driver selects
128xfs automatically for some lower samples rates. By using an
additional mclk_div divider, it is now possible to control the
behaviour. This allows using 256xfs PLL frequency on all sample rates up
to 96kHz. It should allow lower jitter and better signal quality. The
behavior has to be controlled by the sound card driver, because some
sample frequency share the same setting. e.g. 192kHz and 96kHz use
24.576MHz master clock. The only difference is the MCLK divider.

This also added support for 32bit data.

Signed-off-by: Daniel Matuschek <daniel@matuschek.net>
sound/soc/codecs/wm8804.c

index 89f1324..813c477 100644 (file)
@@ -550,6 +550,7 @@ static const struct snd_soc_component_driver soc_component_dev_wm8804 = {
        .use_pmdown_time        = 1,
        .endianness             = 1,
        .non_legacy_dai_naming  = 1,
+       .idle_bias_on           = true,
 };
 
 const struct regmap_config wm8804_regmap_config = {