@@ -23,6 +23,7 @@ SectionVerb {
<codecs/rt5651/MonoSpeaker.conf>
<codecs/rt5651/HeadPhones.conf>
+<codecs/rt5651/DigitalMic.conf>
<codecs/rt5651/IN1-InternalMic.conf>
<codecs/rt5651/IN2-InternalMic.conf>
<codecs/rt5651/IN12-InternalMic.conf>
new file mode 100644
@@ -0,0 +1,29 @@
+SectionDevice."DigitalMic" {
+ Comment "Internal Digital Microphone"
+
+ ConflictingDevice [
+ "InternalMic-IN1"
+ "InternalMic-IN2"
+ "InternalMic-IN12"
+ "HeadsetMic-IN2"
+ "HeadsetMic-IN3"
+ ]
+
+ EnableSequence [
+ cdev "hw:bytcrrt5651"
+ cset "name='Stereo1 ADC MIXL ADC2 Switch' on"
+ cset "name='Stereo1 ADC MIXR ADC2 Switch' on"
+ cset "name='Internal Mic Switch' on"
+ ]
+
+ DisableSequence [
+ cdev "hw:bytcrrt5651"
+ cset "name='Stereo1 ADC MIXL ADC2 Switch' off"
+ cset "name='Stereo1 ADC MIXR ADC2 Switch' off"
+ cset "name='Internal Mic Switch' off"
+ ]
+
+ Value {
+ CaptureChannels 2
+ }
+}
@@ -43,6 +43,8 @@ cset "name='IN3 Boost' 1"
# input
cset "name='Stereo1 ADC L1 Mux' ADC"
cset "name='Stereo1 ADC R1 Mux' ADC"
+cset "name='Stereo1 ADC L2 Mux' DMIC"
+cset "name='Stereo1 ADC R2 Mux' DMIC"
cset "name='RECMIXL BST1 Switch' off"
cset "name='RECMIXR BST1 Switch' off"
cset "name='RECMIXL BST3 Switch' off"
@@ -2,6 +2,7 @@ SectionDevice."InternalMic-IN1" {
Comment "Internal Microphone on IN1"
ConflictingDevice [
+ "DigitalMic"
"InternalMic-IN2"
"InternalMic-IN12"
"HeadsetMic-IN2"
@@ -2,6 +2,7 @@ SectionDevice."InternalMic-IN12" {
Comment "Internal Microphones on IN1 and IN2"
ConflictingDevice [
+ "DigitalMic"
"InternalMic-IN1"
"InternalMic-IN2"
"HeadsetMic-IN2"
@@ -2,6 +2,7 @@ SectionDevice."HeadsetMic-IN2" {
Comment "Headset Microphone on IN2"
ConflictingDevice [
+ "DigitalMic"
"InternalMic-IN1"
"InternalMic-IN2"
"InternalMic-IN12"
@@ -2,6 +2,7 @@ SectionDevice."InternalMic-IN2" {
Comment "Internal Microphone on IN2"
ConflictingDevice [
+ "DigitalMic"
"InternalMic-IN1"
"InternalMic-IN12"
"HeadsetMic-IN2"
@@ -2,6 +2,7 @@ SectionDevice."HeadsetMic-IN3" {
Comment "Headset Microphone on IN3"
ConflictingDevice [
+ "DigitalMic"
"InternalMic-IN1"
"InternalMic-IN2"
"InternalMic-IN12"
@@ -1,6 +1,7 @@
alsaconfigdir = @ALSA_CONFIG_DIR@
ucmdir = $(alsaconfigdir)/ucm/codecs/rt5651
-ucm_DATA = EnableSeq.conf HeadPhones.conf HeadPhones-swapped.conf \
+ucm_DATA = DigitalMic.conf EnableSeq.conf \
+ HeadPhones.conf HeadPhones-swapped.conf \
IN1-InternalMic.conf IN2-InternalMic.conf IN12-InternalMic.conf \
IN2-HeadsetMic.conf IN3-HeadsetMic.conf Speaker.conf MonoSpeaker.conf
EXTRA_DIST = $(ucm_DATA)
Add a new ucm/codecs/rt5651/DigitalMic.conf snippet for digital mic support and include this in the default non board-specific bytcr-rt5651.conf. Signed-off-by: Hans de Goede <hdegoede@redhat.com> --- src/conf/ucm/bytcr-rt5651/HiFi.conf | 1 + src/conf/ucm/codecs/rt5651/DigitalMic.conf | 29 +++++++++++++++++++ src/conf/ucm/codecs/rt5651/EnableSeq.conf | 2 ++ .../ucm/codecs/rt5651/IN1-InternalMic.conf | 1 + .../ucm/codecs/rt5651/IN12-InternalMic.conf | 1 + .../ucm/codecs/rt5651/IN2-HeadsetMic.conf | 1 + .../ucm/codecs/rt5651/IN2-InternalMic.conf | 1 + .../ucm/codecs/rt5651/IN3-HeadsetMic.conf | 1 + src/conf/ucm/codecs/rt5651/Makefile.am | 3 +- 9 files changed, 39 insertions(+), 1 deletion(-) create mode 100644 src/conf/ucm/codecs/rt5651/DigitalMic.conf