alsa-project/alsa-ucm-conf

Dmic mute button is not working with SOF based acp-dmic solution

Venkata-Prasad-Potturu opened this issue · 2 comments

Hi,
We have enabled ACP-DMIC endpoint support using SOF stack, and created mixer controls for capture switch and volume.
Trying to link Mic mute button with amixer controls in the UCM config file, but unable to invoke the enable/disable sequence when we press mic mute button.
Please find the below ucm configuration, amixer controls and pactl list.
pactl_list.txt

Could anyone help on this.

AMIXER CONTROLS:-
root@systemc-Mayan-RMB:/usr/share/alsa/ucm2# arecord -l
**** List of CAPTURE Hardware Devices ****
card 1: sofrmbdsp [sof-rmb-dsp], device 6: DMIC (*) []
Subdevices: 0/1
Subdevice #0: subdevice #0
root@systemc-Mayan-RMB:/usr/share/alsa/ucm2# amixer -c 1 contents
numid=2,iface=MIXER,name='PGA4.0 4 Master Capture Switch'
; type=BOOLEAN,access=rw------,values=2
: values=on,on
numid=1,iface=MIXER,name='PGA4.0 4 Master Capture Volume'
; type=INTEGER,access=rw---R--,values=2,min=0,max=80,step=0
: values=44,44
| dBscale-min=-50.00dB,step=1.00dB,mute=1
root@systemc-Mayan-RMB:/usr/share/alsa/ucm2#
UCM Configuration:-

	SectionDevice."dmic" {
			Comment "Digital Microphone"
			EnableSequence [
					exec "echo DMIC EnableSequence"
					cset "name='PGA4.0 4 Master Capture Switch' 1"
					cset "name='PGA4.0 4 Master Capture Volume' 44"
		   ]

			DisableSequence [
					exec "echo DMIC DisableSequence"
					cset "name='PGA4.0 4 Master Capture Switch' 0"
					cset "name='PGA4.0 4 Master Capture Volume' 33"
			]

			Value {
					CapturePriority 100
					CapturePCM "hw:${CardId},6"
			}
	}

@perexg
Could you please help me on this.

I'm sorry but you're mixing PCM device initialization with mixer control. The Switch/Volume control should be in Value section - CaptureMixerElem. See other configurations for an example. For your case, the configuration would be:

Value {
   CaptureMixerElem "PGA4.0 4 Master Capture"
}