1 # Android ALSA configuration file for the mfld_cdk audio.
12 ctl.AndroidPlayback_HDMI {
18 ctl.AndroidPlayback_Widi-Loopback {
42 pcm.AndroidPlayback_Speaker_ringtone {
47 pcm.AndroidPlayback_Speaker_normal {
62 {name "Speaker Mux Playback Route" value [0 0]}
68 {name "Mode Playback Route" value 0}
74 {name "Headset Playback Route" value 1}
80 # Android out stream should be Earpiece.
81 # Excution: alsa_amixer cset numid=1 1
83 pcm.AndroidPlayback_Earpiece_normal {
98 {name "Playback Switch" value 0}
104 {name "Mode Playback Route" value 0}
110 {name "Speaker Mux Playback Route" value [0 0]}
116 {name "Headset Playback Route" value 1}
121 pcm.AndroidPlayback_Headset_ringtone {
126 pcm.AndroidPlayback_Headset_normal {
141 {name "Playback Switch" value 1}
147 {name "Mode Playback Route" value 0}
153 {name "Speaker Mux Playback Route" value [0 0]}
159 {name "Headset Playback Route" value 0}
164 pcm.AndroidPlayback_Headphone_ringtone {
166 slave.pcm "headphone"
169 pcm.AndroidPlayback_Headphone_normal {
171 slave.pcm "headphone"
184 {name "Playback Switch" value 1}
190 {name "Mode Playback Route" value 0}
196 {name "Speaker Mux Playback Route" value [0 0]}
202 {name "Headset Playback Route" value 0}
210 pcm.AndroidPlayback_HDMI {
218 pcm.AndroidPlayback_HDMI_normal {
226 pcm.AndroidPlayback_Speaker_HDMI_ringtone {
231 pcm.AndroidPlayback_Speaker_HDMI_normal {
233 slave.pcm "HDMI_plus_speaker"
234 route_policy duplicate
237 pcm.HDMI_plus_speaker {
239 slaves.a.pcm "AndroidPlayback_HDMI_normal"
241 slaves.b.pcm "speaker"
262 pcm.AndroidPlayback_Widi-Loopback{
268 pcm.AndroidPlayback_Widi-Loopback_normal{
277 # Speaker and Headset dual routing for ringtone
279 pcm.AndroidPlayback_Speaker_Headphone_normal {
281 slave.pcm "dualroute"
284 pcm.AndroidPlayback_Speaker_Headset_normal {
286 slave.pcm "dualroute"
289 pcm.AndroidPlayback_Speaker_Headphone_ringtone {
291 slave.pcm "dualroute"
294 pcm.AndroidPlayback_Speaker_Headset_ringtone {
296 slave.pcm "dualroute"
309 {name "Playback Switch" value 1}
310 {name "Mode Playback Route" value 0}
311 {name "Speaker Mux Playback Route" value [1 1]}
317 {name "Headset Playback Route" value 0}
329 pcm.AndroidCapture_BuiltinMic_normal {
344 {name "DMIC12 Capture Route" value 1}
350 {name "DMIC56 Capture Route" value 1}
356 {name "Txpath1 Capture Route" value 0}
362 {name "Txpath2 Capture Route" value 4}
368 {name "Txpath3 Capture Route" value 3}
374 {name "Txpath4 Capture Route" value 5}
379 # Adroid out stream should be Headset.
380 # Excution: alsa_amixer cset numid=1 0
382 pcm.AndroidCapture_Headset_normal {
384 slave.pcm captureheadset
397 {name "Mic1Mode Capture Route" value 0}
403 {name "Mic_InputL Capture Route" value 0}
409 {name "Mic_InputR Capture Route" value 1}
415 {name "Txpath1 Capture Route" value 6}
421 {name "Txpath3 Capture Route" value 3}
427 {name "Txpath4 Capture Route" value 5}
433 {name "Mic1 Capture Volume" value 1}
442 pcm.AndroidPlayback_Bluetooth {
446 pcm.AndroidCapture_BluetoothScoHeadset {
450 pcm.AndroidPlayback_Bluetooth_normal {
452 slave.pcm "playbackBluetoothSco"
455 pcm.AndroidCapture_BluetoothScoHeadset_normal {
457 slave.pcm "captureBluetoothSco"
461 pcm.playbackBluetoothSco {
470 pcm.captureBluetoothSco {
483 pcm.AndroidPlayback_Speaker_incall {
485 slave.pcm "voiceIn_Speaker"
488 pcm.AndroidPlayback_Earpiece_incall {
490 slave.pcm "voiceIn_Earpiece"
493 pcm.AndroidPlayback_Headset_incall {
495 slave.pcm "voiceIn_Headset"
498 pcm.AndroidPlayback_Headphone_incall {
500 slave.pcm "voiceIn_Headphone"
503 pcm.AndroidPlayback_Bluetooth_incall {
505 slave.pcm "voiceIn_BT"
508 pcm.AndroidCapture_VoiceCall_incall {
513 pcm.AndroidCapture_BluetoothScoHeadset_incall {
518 pcm.AndroidCapture_BuiltinMic_incall {
522 pcm.AndroidCapture_Headset_incall {
536 pcm.voiceIn_Speaker {
543 hooks.0 { type ctl_voice hook_args [ {name "Voice Speaker" value 1} ] }
546 pcm.voiceIn_Headset {
553 hooks.0 { type ctl_voice hook_args [ {name "Voice Headset" value 1} ] }
556 pcm.voiceIn_Headphone {
563 hooks.0 { type ctl_voice hook_args [ {name "Voice Headphone" value 1} ] }
566 pcm.voiceIn_Earpiece {
573 hooks.0 { type ctl_voice hook_args [ {name "Voice Earpiece" value 1} ] }
583 hooks.0 { type ctl_voice hook_args [ {name "Voice BT" value 1} ] }
587 # CSV Call Codec settings
589 pcm.VoicePlayback_Earpiece_incall {
591 slave.pcm "voiceIn_Earpiece_incall"
594 pcm.VoicePlayback_Speaker_incall {
596 slave.pcm "voiceIn_Speaker_incall"
599 pcm.VoicePlayback_Headset_incall {
601 slave.pcm "voiceIn_Headset_incall"
604 pcm.VoicePlayback_Headphone_incall {
606 slave.pcm "voiceIn_Headphone_incall"
609 pcm.VoiceCapture_incall {
611 slave.pcm "voiceOut_incall"
615 pcm.voiceOut_incall {
624 pcm.voiceIn_Earpiece_incall {
631 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 0} ] }
632 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 1} ] }
633 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
634 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [0 0]} ] }
635 hooks.4 { type ctl_elems hook_args [ {name "DMIC12 Capture Route" value 1} ] }
636 hooks.5 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
637 hooks.6 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 0} ] }
638 hooks.7 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 4} ] }
639 hooks.8 { type ctl_elems hook_args [ {name "PCM1 Mode" value 0} ] }
642 pcm.voiceIn_Speaker_incall {
649 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 1} ] }
650 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 1} ] }
651 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
652 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [1 1]} ] }
653 hooks.4 { type ctl_elems hook_args [ {name "DMIC12 Capture Route" value 0} ] }
654 hooks.5 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
655 hooks.6 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 4} ] }
656 hooks.7 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 0} ] }
657 hooks.8 { type ctl_elems hook_args [ {name "PCM1 Mode" value 0} ] }
660 pcm.voiceIn_Headset_incall {
667 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 1} ] }
668 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 0} ] }
669 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
670 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [0 0]} ] }
671 hooks.4 { type ctl_elems hook_args [ {name "Mic1Mode Capture Route" value 0} ] }
672 hooks.5 { type ctl_elems hook_args [ {name "Mic_InputL Capture Route" value 0} ] }
673 hooks.6 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
674 hooks.7 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 6} ] }
675 hooks.8 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 4} ] }
676 hooks.9 { type ctl_elems hook_args [ {name "Mic1 Capture Volume" value 1} ] }
677 hooks.10 { type ctl_elems hook_args [ {name "PCM1 Mode" value 0} ] }
680 pcm.voiceIn_Headphone_incall {
687 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 1} ] }
688 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 0} ] }
689 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
690 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [0 0]} ] }
691 hooks.4 { type ctl_elems hook_args [ {name "DMIC12 Capture Route" value 1} ] }
692 hooks.5 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
693 hooks.6 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 0} ] }
694 hooks.7 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 4} ] }
695 hooks.8 { type ctl_elems hook_args [ {name "PCM1 Mode" value 0} ] }
702 pcm.AndroidPlayback_Speaker_incommunication {
704 slave.pcm "voipIn_Speaker"
707 pcm.AndroidPlayback_Earpiece_incommunication {
709 slave.pcm "voipIn_Earpiece"
712 pcm.AndroidPlayback_Headset_incommunication {
714 slave.pcm "voipIn_Headset"
717 pcm.AndroidPlayback_Headphone_incommunication {
719 slave.pcm "voipIn_Headphone"
722 pcm.AndroidPlayback_Bluetooth_incommunication {
728 # Average 0 <- 0*0.5 + 1*0.5
729 # route_policy average
732 pcm.AndroidCapture_VoiceCall_incommunication {
734 slave.pcm "voipOut_Codec"
737 pcm.AndroidCapture_BuiltinMic_incommunication {
739 slave.pcm "voipOut_Codec"
742 pcm.AndroidCapture_Headset_incommunication {
744 slave.pcm "voipOut_Codec"
747 pcm.AndroidCapture_BluetoothScoHeadset_incommunication {
749 slave.pcm voipOut_BT_hw
751 route_policy duplicate
787 hooks.0 { type ctl_voice hook_args [ {name "Voice Speaker" value 1} ] }
797 hooks.0 { type ctl_voice hook_args [ {name "Voice Headset" value 1} ] }
800 pcm.voipIn_Headphone {
807 hooks.0 { type ctl_voice hook_args [ {name "Voice Headphone" value 1} ] }
810 pcm.voipIn_Earpiece {
817 hooks.0 { type ctl_voice hook_args [ {name "Voice Earpiece" value 1} ] }
827 hooks.0 { type ctl_voice hook_args [ {name "Voice BT" value 1} ] }
831 # VoIP Call Codec settings
833 pcm.VoicePlayback_Earpiece_incommunication {
835 slave.pcm "voiceIn_Earpiece_incommunication"
838 pcm.VoicePlayback_Speaker_incommunication {
840 slave.pcm "voiceIn_Speaker_incommunication"
843 pcm.VoicePlayback_Headset_incommunication {
845 slave.pcm "voiceIn_Headset_incommunication"
848 pcm.VoicePlayback_Headphone_incommunication {
850 slave.pcm "voiceIn_Headphone_incommunication"
853 pcm.VoiceCapture_incommunication {
855 slave.pcm "voiceOut_incommunication"
859 pcm.voiceOut_incommunication {
868 pcm.voiceIn_Earpiece_incommunication {
875 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 0} ] }
876 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 0} ] }
877 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
878 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [0 0]} ] }
879 hooks.4 { type ctl_elems hook_args [ {name "DMIC12 Capture Route" value 1} ] }
880 hooks.5 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
881 hooks.6 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 0} ] }
882 hooks.7 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 4} ] }
883 hooks.8 { type ctl_elems hook_args [ {name "PCM1 Mode" value 1} ] }
886 pcm.voiceIn_Speaker_incommunication {
893 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 1} ] }
894 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 1} ] }
895 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
896 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [1 1]} ] }
897 hooks.4 { type ctl_elems hook_args [ {name "DMIC12 Capture Route" value 0} ] }
898 hooks.5 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
899 hooks.6 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 4} ] }
900 hooks.7 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 0} ] }
901 hooks.8 { type ctl_elems hook_args [ {name "PCM1 Mode" value 1} ] }
904 pcm.voiceIn_Headset_incommunication {
911 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 1} ] }
912 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 0} ] }
913 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
914 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [0 0]} ] }
915 hooks.4 { type ctl_elems hook_args [ {name "Mic1Mode Capture Route" value 0} ] }
916 hooks.5 { type ctl_elems hook_args [ {name "Mic_InputL Capture Route" value 0} ] }
917 hooks.6 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
918 hooks.7 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 6} ] }
919 hooks.8 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 4} ] }
920 hooks.9 { type ctl_elems hook_args [ {name "Mic1 Capture Volume" value 1} ] }
921 hooks.10 { type ctl_elems hook_args [ {name "PCM1 Mode" value 1} ] }
924 pcm.voiceIn_Headphone_incommunication {
931 hooks.0 { type ctl_elems hook_args [ {name "Playback Switch" value 1} ] }
932 hooks.1 { type ctl_elems hook_args [ {name "Headset Playback Route" value 0} ] }
933 hooks.2 { type ctl_elems hook_args [ {name "Mode Playback Route" value 1} ] }
934 hooks.3 { type ctl_elems hook_args [ {name "Speaker Mux Playback Route" value [0 0]} ] }
935 hooks.4 { type ctl_elems hook_args [ {name "DMIC12 Capture Route" value 1} ] }
936 hooks.5 { type ctl_elems hook_args [ {name "DMIC56 Capture Route" value 1} ] }
937 hooks.6 { type ctl_elems hook_args [ {name "Txpath1 Capture Route" value 0} ] }
938 hooks.7 { type ctl_elems hook_args [ {name "Txpath2 Capture Route" value 4} ] }
939 hooks.8 { type ctl_elems hook_args [ {name "PCM1 Mode" value 1} ] }