[alsa-devel] [PATCH 3/3] ASoC: rt5677: Add the specific TDM setting for Intel platform.

Oder Chiou oder_chiou at realtek.com
Thu Jan 8 03:31:07 CET 2015


The patch adds the specific TDM setting for Intel platform in the platform
data. It enables the TDM1's capbility that can receive the 100FS data.

Signed-off-by: Oder Chiou <oder_chiou at realtek.com>
---
 include/sound/rt5677.h    | 3 +++
 sound/soc/codecs/rt5677.c | 6 +++++-
 2 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/include/sound/rt5677.h b/include/sound/rt5677.h
index a620704..1137183 100644
--- a/include/sound/rt5677.h
+++ b/include/sound/rt5677.h
@@ -40,6 +40,9 @@ struct rt5677_platform_data {
 
 	/* Set MICBIAS1 VDD 1v8 or 3v3 */
 	bool micbias1_vdd_3v3;
+
+	/* Set TDM mode for Intel */
+	bool tdm_for_intel;
 };
 
 #endif
diff --git a/sound/soc/codecs/rt5677.c b/sound/soc/codecs/rt5677.c
index 32c368c..b1c17b0 100644
--- a/sound/soc/codecs/rt5677.c
+++ b/sound/soc/codecs/rt5677.c
@@ -4427,7 +4427,7 @@ static int rt5677_probe(struct snd_soc_codec *codec)
 
 	rt5677_set_bias_level(codec, SND_SOC_BIAS_OFF);
 
-	regmap_write(rt5677->regmap, RT5677_DIG_MISC, 0x0020);
+	regmap_update_bits(rt5677->regmap, RT5677_DIG_MISC, 0x0020, 0x0020);
 	regmap_write(rt5677->regmap, RT5677_PWR_DSP2, 0x0c00);
 
 	for (i = 0; i < RT5677_GPIO_NUM; i++)
@@ -4928,6 +4928,10 @@ static int rt5677_i2c_probe(struct i2c_client *i2c,
 			RT5677_MICBIAS1_CTRL_VDD_MASK,
 			RT5677_MICBIAS1_CTRL_VDD_3_3V);
 
+	if (rt5677->pdata.tdm_for_intel)
+		regmap_update_bits(rt5677->regmap, RT5677_DIG_MISC, 0x8000,
+			0x8000);
+
 	rt5677_init_gpio(i2c);
 	rt5677_init_irq(i2c);
 
-- 
1.8.1.1.439.g50a6b54



More information about the Alsa-devel mailing list