• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Configuration for the EMU10K1 chip
3#
4
5<confdir:pcm/front.conf>
6
7EMU10K1.pcm.front.0 {
8	@args [ CARD ]
9	@args.CARD {
10		type string
11	}
12	type asym
13	playback.pcm {
14		type hooks
15		slave.pcm {
16			type hw
17			card $CARD
18			chmap [ "UNKNOWN" "FL,FR" ]
19		}
20		hooks.0 {
21			type ctl_elems
22			hook_args [
23				{
24					interface PCM
25					name "EMU10K1 PCM Send Volume"
26					index { @func private_pcm_subdevice }
27					# lock true
28					optional true
29					value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
30				}
31				{
32					# for compatibility with older drivers
33					name "EMU10K1 PCM Send Volume"
34					index { @func private_pcm_subdevice }
35					# lock true
36					optional true
37					value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
38				}
39				{
40					interface PCM
41					name "EMU10K1 PCM Send Routing"
42					index { @func private_pcm_subdevice }
43					# lock true
44					optional true
45					value [ 8 9 0 0 8 9 0 0 8 9 0 0 ]
46				}
47				{
48					# for compatibility with older drivers
49					name "EMU10K1 PCM Send Routing"
50					index { @func private_pcm_subdevice }
51					# lock true
52					optional true
53					value [ 8 9 0 0 8 9 0 0 8 9 0 0 ]
54				}
55			]
56		}
57	}
58	capture.pcm {
59		type hw
60		card $CARD
61	}
62}
63
64<confdir:pcm/rear.conf>
65
66EMU10K1.pcm.rear.0 {
67	@args [ CARD ]
68	@args.CARD {
69		type string
70	}
71	type asym
72	playback.pcm {
73		type hooks
74		slave.pcm {
75			type hw
76			card $CARD
77			chmap [ "UNKNOWN" "RL,RR" ]
78		}
79		hooks.0 {
80			type ctl_elems
81			hook_args [
82				{
83					interface PCM
84					name "EMU10K1 PCM Send Volume"
85					index { @func private_pcm_subdevice }
86					# lock true
87					optional true
88					value [ 0 0 255 255 0 0 255 0 0 0 0 255 ]
89				}
90				{
91					# for compatibility with older drivers
92					name "EMU10K1 PCM Send Volume"
93					index { @func private_pcm_subdevice }
94					# lock true
95					optional true
96					value [ 0 0 255 255 0 0 255 0 0 0 0 255 ]
97				}
98			]
99		}
100	}
101}
102
103<confdir:pcm/center_lfe.conf>
104
105EMU10K1.pcm.center_lfe.0 {
106	@args [ CARD ]
107	@args.CARD {
108		type string
109	}
110	type asym
111	playback.pcm {
112		type hooks
113		slave.pcm {
114			type hw
115			card $CARD
116			chmap [ "UNKNOWN" "FC,LFE" ]
117		}
118		hooks.0 {
119			type ctl_elems
120			hook_args [
121				{
122					name "Headphone Center Playback Switch"
123					index 1
124					preserve true
125					# lock true
126					optional true
127					value true
128				}
129				{
130					name "Headphone LFE Playback Switch"
131					index 1
132					preserve true
133					# lock true
134					optional true
135					value true
136				}
137# if you have a creative's digital receiver, you can get surround/center/lfe
138# output through the digital jack.  so, the following is commented out.
139# pay attention in case of analog output from the shared center/digital
140# jack!
141#				{
142#					name "SB Live Analog/Digital Output Jack"
143#					preserve true
144#					lock true
145#					value 0
146#				}
147				{
148					interface PCM
149					name "EMU10K1 PCM Send Volume"
150					index { @func private_pcm_subdevice }
151					# lock true
152					optional true
153					value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
154				}
155				{
156					# for compatibility with older drivers
157					name "EMU10K1 PCM Send Volume"
158					index { @func private_pcm_subdevice }
159					# lock true
160					optional true
161					value [ 255 255 0 0 255 0 0 0 0 255 0 0 ]
162				}
163				{
164					interface PCM
165					name "EMU10K1 PCM Send Routing"
166					index { @func private_pcm_subdevice }
167					# lock true
168					optional true
169					value [ 6 7 0 0 6 7 0 0 6 7 0 0 ]
170				}
171				{
172					# for compatibility with older drivers
173					name "EMU10K1 PCM Send Routing"
174					index { @func private_pcm_subdevice }
175					# lock true
176					optional true
177					value [ 6 7 0 0 6 7 0 0 6 7 0 0 ]
178				}
179			]
180		}
181	}
182}
183
184<confdir:pcm/surround40.conf>
185
186EMU10K1.pcm.surround40.0 {
187	@args [ CARD ]
188	@args.CARD {
189		type string
190	}
191	type multi
192	slaves [
193		{
194			pcm {
195				@func concat
196				strings [
197					"cards.EMU10K1.pcm.front.0:CARD=" $CARD
198				]
199			}
200			channels 2
201		}
202		{
203			pcm {
204				@func concat
205				strings [
206					"cards.EMU10K1.pcm.rear.0:CARD=" $CARD
207				]
208			}
209			channels 2
210		}
211	]
212	bindings [
213		{ slave 0 channel 0 }
214		{ slave 0 channel 1 }
215		{ slave 1 channel 0 }
216		{ slave 1 channel 1 }
217	]
218}
219
220<confdir:pcm/surround21.conf>
221<confdir:pcm/surround41.conf>
222<confdir:pcm/surround50.conf>
223<confdir:pcm/surround51.conf>
224
225EMU10K1.pcm.surround51.0 {
226	@args [ CARD ]
227	@args.CARD {
228		type string
229	}
230	type multi
231	slaves [
232		{
233			pcm {
234				@func concat
235				strings [
236					"cards.EMU10K1.pcm.front.0:CARD=" $CARD
237				]
238			}
239			channels 2
240		}
241		{
242			pcm {
243				@func concat
244				strings [
245					"cards.EMU10K1.pcm.rear.0:CARD=" $CARD
246				]
247			}
248			channels 2
249		}
250		{
251			pcm {
252				@func concat
253				strings [
254					"cards.EMU10K1.pcm.center_lfe.0:CARD=" $CARD
255				]
256			}
257			channels 2
258		}
259	]
260	bindings [
261		{ slave 0 channel 0 }
262		{ slave 0 channel 1 }
263		{ slave 1 channel 0 }
264		{ slave 1 channel 1 }
265		{ slave 2 channel 0 }
266		{ slave 2 channel 1 }
267	]
268}
269
270<confdir:pcm/iec958.conf>
271
272EMU10K1.pcm.iec958.0 {
273	@args [ CARD AES0 AES1 AES2 AES3 ]
274	@args.CARD {
275		type string
276	}
277	@args.AES0 {
278		type integer
279	}
280	@args.AES1 {
281		type integer
282	}
283	@args.AES2 {
284		type integer
285	}
286	@args.AES3 {
287		type integer
288	}
289	type hooks
290	slave.pcm {
291		type hw
292		card $CARD
293		device 2
294	}
295	hooks.0 {
296		type ctl_elems
297		hook_args [
298			{
299				interface PCM
300				name "IEC958 Playback Default"
301				device 2
302				lock true
303				preserve true
304				optional true
305				value [ $AES0 $AES1 $AES2 $AES3 ]
306			}
307			{
308				# for compatibility with older drivers
309				name "IEC958 Playback Default"
310				lock true
311				preserve true
312				optional true
313				value [ $AES0 $AES1 $AES2 $AES3 ]
314			}
315			{
316				name "IEC958 Optical Raw Playback Switch"
317				lock true
318				preserve true
319				value [ 1 1 ]
320			}
321			{
322				name "SB Live Analog/Digital Output Jack"
323				lock true
324				preserve true
325				value 1
326			}
327		]
328	}
329}
330