ASoC: es7243e: add es7243e I2S adc support

ES7243E is 2-ch ADC with I2S interface for Microphone Array

Replace digital_mute with mute_stream

Change-Id: I3c61f5feccad9362e2859d7646e88a0e990c998c
Signed-off-by: Binyuan Lan <lby@rock-chips.com>
Signed-off-by: Sugar Zhang <sugar.zhang@rock-chips.com>
This commit is contained in:
Binyuan Lan
2020-11-30 13:47:44 +00:00
committed by Tao Huang
parent 1e7cbe5fb7
commit 70a8170ba5
3 changed files with 11 additions and 2 deletions

View File

@@ -98,6 +98,7 @@ config SND_SOC_ALL_CODECS
imply SND_SOC_ES7134
imply SND_SOC_ES7202
imply SND_SOC_ES7241
imply SND_SOC_ES7243E
imply SND_SOC_GTM601
imply SND_SOC_HDAC_HDMI
imply SND_SOC_HDAC_HDA
@@ -788,6 +789,9 @@ config SND_SOC_ES7202
config SND_SOC_ES7241
tristate "Everest Semi ES7241 CODEC"
config SND_SOC_ES7243E
tristate "Everest Semi ES724E 2CH ADC"
config SND_SOC_ES8311
tristate "Everest Semi ES8311 CODEC"
depends on I2C

View File

@@ -88,6 +88,7 @@ snd-soc-dummy-codec-objs := dummy-codec.o
snd-soc-es7134-objs := es7134.o
snd-soc-es7202-objs := es7202.o
snd-soc-es7241-objs := es7241.o
snd-soc-es7243e-objs := es7243e.o
snd-soc-es8311-objs := es8311.o
snd-soc-es8316-objs := es8316.o
snd-soc-es8323-objs := es8323.o
@@ -407,6 +408,7 @@ obj-$(CONFIG_SND_SOC_DUMMY_CODEC) += snd-soc-dummy-codec.o
obj-$(CONFIG_SND_SOC_ES7134) += snd-soc-es7134.o
obj-$(CONFIG_SND_SOC_ES7202) += snd-soc-es7202.o
obj-$(CONFIG_SND_SOC_ES7241) += snd-soc-es7241.o
obj-$(CONFIG_SND_SOC_ES7243E) += snd-soc-es7243e.o
obj-$(CONFIG_SND_SOC_ES8311) += snd-soc-es8311.o
obj-$(CONFIG_SND_SOC_ES8316) += snd-soc-es8316.o
obj-$(CONFIG_SND_SOC_ES8323) += snd-soc-es8323.o

View File

@@ -480,11 +480,14 @@ es7243e_pcm_hw_params(struct snd_pcm_substream *substream,
return 0;
}
static int es7243e_mute(struct snd_soc_dai *dai, int mute)
static int es7243e_mute(struct snd_soc_dai *dai, int mute, int stream)
{
//struct snd_soc_codec *codec = dai->codec;
u8 i;
printk("Enter into %s()\n", __func__);
if (stream == SNDRV_PCM_STREAM_PLAYBACK)
return 0;
for (i = 0; i < (ES7243E_CHANNELS_MAX) / 2; i++) {
if (mute)
es7243e_update_bits(0x0b, 0xc0, 0xc0, i2c_clt[i]);
@@ -1671,7 +1674,7 @@ static struct snd_soc_dai_ops es7243e_ops = {
.hw_params = es7243e_pcm_hw_params,
.set_fmt = es7243e_set_dai_fmt,
.set_sysclk = es7243e_set_dai_sysclk,
.digital_mute = es7243e_mute,
.mute_stream = es7243e_mute,
};
#if ES7243E_CHANNELS_MAX > 0