ASoC: Intel: bytcr_rt5651: Select RCCLK on init()
authorHans de Goede <hdegoede@redhat.com>
Sun, 4 Mar 2018 14:36:10 +0000 (15:36 +0100)
committerMark Brown <broonie@kernel.org>
Wed, 7 Mar 2018 14:19:51 +0000 (14:19 +0000)
When the BYT_RT5651_MCLK_EN quirk is set, we disable the MCLK from
byt_rt5651_init(), we need to select the RCCLK as sysclk before doing this
to make sure that jack-detect works directly after boot.

Signed-off-by: Hans de Goede <hdegoede@redhat.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/bytcr_rt5651.c

index 6efd7c9..53ce313 100644 (file)
@@ -457,6 +457,11 @@ static int byt_rt5651_init(struct snd_soc_pcm_runtime *runtime)
 
        card->dapm.idle_bias_off = true;
 
+       /* Start with RC clk for jack-detect (we disable MCLK below) */
+       if (byt_rt5651_quirk & BYT_RT5651_MCLK_EN)
+               snd_soc_component_update_bits(codec, RT5651_GLB_CLK,
+                       RT5651_SCLK_SRC_MASK, RT5651_SCLK_SRC_RCCLK);
+
        switch (BYT_RT5651_MAP(byt_rt5651_quirk)) {
        case BYT_RT5651_IN1_MAP:
                custom_map = byt_rt5651_intmic_in1_map;