• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# Android ALSA configuration file for the WM8994 audio.
2
3
4##################################################################################################################
5#
6#	{name "Playback Path"		value 2}		# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
7#								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 9:R_SPK_HP
8#	{name "Capture MIC Path"	value 1} 		# 0:Main Mic 1:Ear MIC 2:BT MIC
9#	{name "Voice Call Path"		value 1}		# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
10#
11##################################################################################################################
12
13
14##
15## Mixer Devices
16##
17
18ctl.AndroidPlayback {
19	type hw
20	card 0
21}
22
23ctl.AndroidRecord {
24	type hw
25	card 0
26}
27
28
29##
30## Playback Devices
31##
32
33pcm.AndroidPlayback {
34	type hooks
35	slave.pcm {
36		type hw
37		card 0
38		device 0	# Must be of type "digital audio playback"
39	}
40	hooks.0 {
41		type ctl_elems
42		hook_args [
43			# Enable audio output from the DSP
44		]
45	}
46}
47
48pcm.AndroidPlayback_Earpiece {
49	type hooks
50	slave.pcm {
51		type hw
52		card 0
53		device 0	# Must be of type "digital audio playback"
54	}
55	hooks.0 {
56		type ctl_elems
57		hook_args [
58			# Enable audio output from the DSP
59			{name "Voice Call Path"	value 1}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
60		]
61	}
62}
63
64pcm.AndroidPlayback_Speaker {
65	type hooks
66	slave.pcm {
67		type hw
68		card 0
69		device 0	# Must be of type "digital audio playback"
70	}
71	hooks.0 {
72		type ctl_elems
73		hook_args [
74			# Enable audio output from the DSP
75			{name "Playback Path"	value 2}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
76								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
77		]
78	}
79}
80
81pcm.AndroidPlayback_Headset {
82	type hooks
83	slave.pcm {
84		type hw
85		card 0
86		device 0	# Must be of type "digital audio playback"
87	}
88	hooks.0 {
89		type ctl_elems
90		hook_args [
91			# Enable audio output from the DSP
92			{name "Playback Path"	value 3}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
93								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
94		]
95	}
96}
97
98pcm.AndroidPlayback_Headphone {
99	type hooks
100	slave.pcm {
101		type hw
102		card 0
103		device 0	# Must be of type "digital audio playback"
104	}
105	hooks.0 {
106		type ctl_elems
107		hook_args [
108			# Enable audio output from the DSP
109			{name "Playback Path"	value 4}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
110								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
111		]
112	}
113}
114
115pcm.AndroidPlayback_Bluetooth {
116	type hooks
117	slave.pcm {
118		type hw
119		card 0
120		device 0	# Must be of type "digital audio playback"
121	}
122	hooks.0 {
123		type ctl_elems
124		hook_args [
125			# Enable audio output from the DSP
126			{name "Playback Path"	value 5}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
127								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
128		]
129	}
130}
131
132pcm.AndroidPlayback_Earpiece_normal {
133	type hooks
134	slave.pcm {
135		type hw
136		card 0
137		device 0	# Must be of type "digital audio playback"
138	}
139	hooks.0 {
140		type ctl_elems
141		hook_args [
142			# Enable audio output from the DSP
143			{name "Playback Path"	value 1}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
144								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
145		]
146	}
147}
148
149pcm.AndroidPlayback_Speaker_normal {
150	type hooks
151	slave.pcm {
152		type hw
153		card 0
154		device 0	# Must be of type "digital audio playback"
155	}
156	hooks.0 {
157		type ctl_elems
158		hook_args [
159			# Enable audio output from the DSP
160			{name "Playback Path"	value 2}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
161								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
162		]
163	}
164}
165
166pcm.AndroidPlayback_Headset_normal {
167	type hooks
168	slave.pcm {
169		type hw
170		card 0
171		device 0	# Must be of type "digital audio playback"
172	}
173	hooks.0 {
174		type ctl_elems
175		hook_args [
176			# Enable audio output from the DSP
177			{name "Playback Path"	value 3}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
178								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
179		]
180	}
181}
182
183pcm.AndroidPlayback_Headphone_normal {
184	type hooks
185	slave.pcm {
186		type hw
187		card 0
188		device 0	# Must be of type "digital audio playback"
189	}
190	hooks.0 {
191		type ctl_elems
192		hook_args [
193			# Enable audio output from the DSP
194			{name "Playback Path"	value 4}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
195								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
196		]
197	}
198}
199
200pcm.AndroidPlayback_Bluetooth_normal {
201	type hooks
202	slave.pcm {
203		type hw
204		card 0
205		device 0	# Must be of type "digital audio playback"
206	}
207	hooks.0 {
208		type ctl_elems
209		hook_args [
210			# Enable audio output from the DSP
211			{name "Playback Path"	value 5}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
212								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
213		]
214	}
215}
216
217pcm.AndroidPlayback_Speaker_Headset_normal {
218	type hooks
219	slave.pcm {
220		type hw
221		card 0
222		device 0	# Must be of type "digital audio playback"
223	}
224	hooks.0 {
225		type ctl_elems
226		hook_args [
227			# Enable audio output from the DSP
228			{name "Playback Path"	value 6}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
229								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
230		]
231	}
232}
233
234pcm.AndroidPlayback_Speaker_Headphone_normal {
235	type hooks
236	slave.pcm {
237		type hw
238		card 0
239		device 0	# Must be of type "digital audio playback"
240	}
241	hooks.0 {
242		type ctl_elems
243		hook_args [
244			# Enable audio output from the DSP
245			{name "Playback Path"	value 6}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
246								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
247		]
248	}
249}
250
251pcm.AndroidPlayback_Earpiece_ringtone {
252	type hooks
253	slave.pcm {
254		type hw
255		card 0
256		device 0	# Must be of type "digital audio playback"
257	}
258	hooks.0 {
259		type ctl_elems
260		hook_args [
261			# Enable audio output from the DSP
262			{name "Playback Path"	value 7}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
263								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
264		]
265	}
266}
267
268pcm.AndroidPlayback_Speaker_ringtone {
269	type hooks
270	slave.pcm {
271		type hw
272		card 0
273		device 0	# Must be of type "digital audio playback"
274	}
275	hooks.0 {
276		type ctl_elems
277		hook_args [
278			# Enable audio output from the DSP
279			{name "Playback Path"	value 7}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
280								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
281		]
282	}
283}
284
285pcm.AndroidPlayback_Headset_ringtone {
286	type hooks
287	slave.pcm {
288		type hw
289		card 0
290		device 0	# Must be of type "digital audio playback"
291	}
292	hooks.0 {
293		type ctl_elems
294		hook_args [
295			# Enable audio output from the DSP
296			{name "Playback Path"	value 8}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
297								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
298		]
299	}
300}
301
302pcm.AndroidPlayback_Headphone_ringtone {
303	type hooks
304	slave.pcm {
305		type hw
306		card 0
307		device 0	# Must be of type "digital audio playback"
308	}
309	hooks.0 {
310		type ctl_elems
311		hook_args [
312			# Enable audio output from the DSP
313			{name "Playback Path"	value 9}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
314								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
315		]
316	}
317}
318
319pcm.AndroidPlayback_Bluetooth_ringtone {
320	type hooks
321	slave.pcm {
322		type hw
323		card 0
324		device 0	# Must be of type "digital audio playback"
325	}
326	hooks.0 {
327		type ctl_elems
328		hook_args [
329			# Enable audio output from the DSP
330			{name "Playback Path"	value 5}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
331								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
332		]
333	}
334}
335
336pcm.AndroidPlayback_Speaker_Headset_ringtone {
337	type hooks
338	slave.pcm {
339		type hw
340		card 0
341		device 0	# Must be of type "digital audio playback"
342	}
343	hooks.0 {
344		type ctl_elems
345		hook_args [
346			# Enable audio output from the DSP
347			{name "Playback Path"	value 10}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
348								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
349		]
350	}
351}
352
353pcm.AndroidPlayback_Speaker_Headphone_ringtone {
354	type hooks
355	slave.pcm {
356		type hw
357		card 0
358		device 0	# Must be of type "digital audio playback"
359	}
360	hooks.0 {
361		type ctl_elems
362		hook_args [
363			# Enable audio output from the DSP
364			{name "Playback Path"	value 10}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
365								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
366		]
367	}
368}
369
370pcm.AndroidPlayback_Earpiece_incall {
371	type hooks
372	slave.pcm {
373		type hw
374		card 0
375		device 0	# Must be of type "digital audio playback"
376	}
377	hooks.0 {
378		type ctl_elems
379		hook_args [
380			# Enable audio output from the DSP
381			{name "Voice Call Path"	value 1}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
382		]
383	}
384}
385
386pcm.AndroidPlayback_Speaker_incall {
387	type hooks
388	slave.pcm {
389		type hw
390		card 0
391		device 0	# Must be of type "digital audio playback"
392	}
393	hooks.0 {
394		type ctl_elems
395		hook_args [
396			# Enable audio output from the DSP
397			{name "Voice Call Path"	value 2}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
398		]
399	}
400}
401
402pcm.AndroidPlayback_Headset_incall {
403	type hooks
404	slave.pcm {
405		type hw
406		card 0
407		device 0	# Must be of type "digital audio playback"
408	}
409	hooks.0 {
410		type ctl_elems
411		hook_args [
412			# Enable audio output from the DSP
413			{name "Voice Call Path"	value 3}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
414		]
415	}
416}
417
418pcm.AndroidPlayback_Headphone_incall {
419	type hooks
420	slave.pcm {
421		type hw
422		card 0
423		device 0	# Must be of type "digital audio playback"
424	}
425	hooks.0 {
426		type ctl_elems
427		hook_args [
428			# Enable audio output from the DSP
429			{name "Voice Call Path"	value 4}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
430		]
431	}
432}
433
434pcm.AndroidPlayback_Bluetooth_incall {
435	type hooks
436	slave.pcm {
437		type hw
438		card 0
439		device 0	# Must be of type "digital audio playback"
440	}
441	hooks.0 {
442		type ctl_elems
443		hook_args [
444			# Enable audio output from the DSP
445			{name "Voice Call Path"	value 5}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
446		]
447	}
448}
449
450pcm.AndroidPlayback_Speaker_Headset_incall {
451	type hooks
452	slave.pcm {
453		type hw
454		card 0
455		device 0	# Must be of type "digital audio playback"
456	}
457	hooks.0 {
458		type ctl_elems
459		hook_args [
460			# Enable audio output from the DSP
461			{name "Voice Call Path"	value 2}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
462		]
463	}
464}
465
466pcm.AndroidPlayback_Speaker_Headphone_incall {
467	type hooks
468	slave.pcm {
469		type hw
470		card 0
471		device 0	# Must be of type "digital audio playback"
472	}
473	hooks.0 {
474		type ctl_elems
475		hook_args [
476			# Enable audio output from the DSP
477			{name "Voice Call Path"	value 2}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
478		]
479	}
480}
481
482
483##
484## Capture  device
485##
486
487pcm.AndroidRecord {
488	type hooks
489	slave.pcm default
490	hooks.0 {
491		type ctl_elems
492		hook_args [
493			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
494		]
495	}
496}
497
498pcm.AndroidRecord_Microphone {
499	type hooks
500	slave.pcm default
501	hooks.0 {
502		type ctl_elems
503		hook_args [
504			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
505		]
506	}
507}
508
509pcm.AndroidRecord_Earpiece_normal {
510	type hooks
511	slave.pcm default
512	hooks.0 {
513		type ctl_elems
514		hook_args [
515			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
516		]
517	}
518}
519
520pcm.AndroidRecord_Speaker_normal {
521	type hooks
522	slave.pcm default
523	hooks.0 {
524		type ctl_elems
525		hook_args [
526			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
527		]
528	}
529}
530
531pcm.AndroidRecord_Headset_normal {
532	type hooks
533	slave.pcm default
534	hooks.0 {
535		type ctl_elems
536		hook_args [
537			{name "Capture MIC Path"	value 1} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
538		]
539	}
540}
541
542pcm.AndroidRecord_Headphone_normal {
543	type hooks
544	slave.pcm default
545	hooks.0 {
546		type ctl_elems
547		hook_args [
548			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
549		]
550	}
551}
552
553pcm.AndroidRecord_Bluetooth_normal {
554	type hooks
555	slave.pcm {
556		type hw
557		card 0
558		device 0	# Must be of type "digital audio capture"
559	}
560	hooks.0 {
561		type ctl_elems
562		hook_args [
563			{name "Capture MIC Path"	value 2} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
564		]
565	}
566}
567
568pcm.AndroidRecord_Speaker_Headset_normal {
569	type hooks
570	slave.pcm default
571	hooks.0 {
572		type ctl_elems
573		hook_args [
574			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
575		]
576	}
577}
578
579pcm.AndroidRecord_Speaker_Headphone_normal {
580	type hooks
581	slave.pcm default
582	hooks.0 {
583		type ctl_elems
584		hook_args [
585			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
586		]
587	}
588}
589
590pcm.AndroidRecord_Speaker_ringtone {
591	type hooks
592	slave.pcm {
593		type hw
594		card 0
595		device 0	# Must be of type "digital audio capture"
596	}
597	hooks.0 {
598		type ctl_elems
599		hook_args [
600			{name "Playback Path"	value 2}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
601								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
602		]
603	}
604}
605
606pcm.AndroidRecord_Headset_ringtone {
607	type hooks
608	slave.pcm {
609		type hw
610		card 0
611		device 0	# Must be of type "digital audio capture"
612	}
613	hooks.0 {
614		type ctl_elems
615		hook_args [
616			{name "Playback Path"	value 3}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
617								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
618		]
619	}
620}
621
622pcm.AndroidRecord_Headphone_ringtone {
623	type hooks
624	slave.pcm {
625		type hw
626		card 0
627		device 0	# Must be of type "digital audio capture"
628	}
629	hooks.0 {
630		type ctl_elems
631		hook_args [
632			{name "Playback Path"	value 4}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
633								# 6:SPK_HP 7:R_SPK 8:R_HP 9:R_HP_NO_MIC 10:R_SPK_HP
634		]
635	}
636}
637
638pcm.AndroidRecord_Earpiece_incall {
639	type hooks
640	slave.pcm default
641	hooks.0 {
642		type ctl_elems
643		hook_args [
644			# Enable audio output from the DSP
645			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
646		]
647	}
648}
649
650pcm.AndroidRecord_Speaker_incall {
651	type hooks
652	slave.pcm default
653	hooks.0 {
654		type ctl_elems
655		hook_args [
656			# Enable audio output from the DSP
657			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
658		]
659	}
660}
661
662pcm.AndroidRecord_Headset_incall {
663	type hooks
664	slave.pcm default
665	hooks.0 {
666		type ctl_elems
667		hook_args [
668			# Enable audio output from the DSP
669			{name "Capture MIC Path"	value 1} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
670		]
671	}
672}
673
674pcm.AndroidRecord_Headphone_incall {
675	type hooks
676	slave.pcm default
677	hooks.0 {
678		type ctl_elems
679		hook_args [
680			# Enable audio output from the DSP
681			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
682		]
683	}
684}
685
686pcm.AndroidRecord_Bluetooth_incall {
687	type hooks
688	slave.pcm default
689	hooks.0 {
690		type ctl_elems
691		hook_args [
692			# Enable audio output from the DSP
693			{name "Capture MIC Path"	value 2} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
694		]
695	}
696}
697
698pcm.AndroidRecord_Speaker_Headset_incall {
699	type hooks
700	slave.pcm default
701	hooks.0 {
702		type ctl_elems
703		hook_args [
704			# Enable audio output from the DSP
705			{name "Capture MIC Path"	value 1} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
706			{name "Voice Call Path"		value 3}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
707		]
708	}
709}
710
711pcm.AndroidRecord_Speaker_Headphone_incall {
712	type hooks
713	slave.pcm default
714	hooks.0 {
715		type ctl_elems
716		hook_args [
717			# Enable audio output from the DSP
718			{name "Capture MIC Path"	value 0} 	# 0:Main Mic 1:Ear MIC 2:BT MIC
719			{name "Voice Call Path"		value 4}	# 0:OFF 1:RCV 2:SPK 3:HP 4:HP_NO_MIC 5:BT
720		]
721	}
722}
723