ASoC: Intel: bytct_rt5640: change default capture settings
authorPierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Sun, 13 Nov 2016 00:07:46 +0000 (18:07 -0600)
committerMark Brown <broonie@kernel.org>
Sun, 13 Nov 2016 09:19:58 +0000 (09:19 +0000)
Most Baytrail-CR devices use analog differential microphones,
modify capture default to avoid DMI quirks. Keep digital mics
for all other configurations.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/intel/boards/bytcr_rt5640.c

index 32aeffc352eeaa385e58402f8b50441cc6542b7a..f9d73b55d2f71c14587e791bf1c2aa6b07c2f0fc 100644 (file)
@@ -57,9 +57,7 @@ struct byt_rt5640_private {
        struct clk *mclk;
 };
 
-static unsigned long byt_rt5640_quirk = BYT_RT5640_DMIC1_MAP |
-                                       BYT_RT5640_DMIC_EN |
-                                       BYT_RT5640_MCLK_EN;
+static unsigned long byt_rt5640_quirk = BYT_RT5640_MCLK_EN;
 
 static void log_quirks(struct device *dev)
 {
@@ -787,6 +785,13 @@ static int snd_byt_rt5640_mc_probe(struct platform_device *pdev)
                        /* no BIOS indications, assume SSP0-AIF2 connection */
                        byt_rt5640_quirk |= BYT_RT5640_SSP0_AIF2;
                }
+
+               /* change defaults for Baytrail-CR capture */
+               byt_rt5640_quirk |= BYT_RT5640_IN1_MAP;
+               byt_rt5640_quirk |= BYT_RT5640_DIFF_MIC;
+       } else {
+               byt_rt5640_quirk |= (BYT_RT5640_DMIC1_MAP |
+                               BYT_RT5640_DMIC_EN);
        }
 
        /* check quirks before creating card */