1#
2# Configuration for the Intel ICH4/ICH5/ICH6 chips
3#
4
5<confdir:pcm/front.conf>
6
7ICH4.pcm.front.0 {
8	@args [ CARD ]
9	@args.CARD {
10		type string
11	}
12	type softvol
13	slave.pcm {
14		type hw
15		card $CARD
16	}
17	control {
18		name "PCM Playback Volume"
19		card $CARD
20	}
21}	
22
23# default with dmix+softvol & dsnoop
24ICH4.pcm.default {
25	@args [ CARD ]
26	@args.CARD {
27		type string
28	}
29	type asym
30	playback.pcm {
31		type plug
32		slave.pcm {
33			type softvol
34			slave.pcm {
35				@func concat
36				strings [ "dmix:" $CARD ]
37			}
38			control {
39				name "PCM Playback Volume"
40				card $CARD
41			}
42		}
43	}
44	capture.pcm {
45		type plug
46		slave.pcm {
47			@func concat
48			strings [ "dsnoop:" $CARD ]
49		}
50	}
51}
52
53<confdir:pcm/surround40.conf>
54
55ICH4.pcm.surround40.0 {
56	@args [ CARD ]
57	@args.CARD {
58		type string
59	}
60	type softvol
61	slave.pcm {
62		type hooks
63		slave.pcm {
64			type hw
65			card $CARD
66			channels 4
67		}
68		hooks.0 {
69			type ctl_elems
70			hook_args [
71			{
72				name "Channel Mode"
73				preserve true
74				value "4ch"
75				lock true
76				optional true
77			}
78			# for old drivers
79			{
80				name "Line-In As Surround"
81				preserve true
82				value true
83				optional true
84			}
85			{
86				name "Surround Down Mix"
87				preserve true
88				value off
89				lock true
90				optional true
91			}
92			]
93		}
94	}
95	control {
96		name "PCM Playback Volume"
97		card $CARD
98	}
99}
100
101<confdir:pcm/surround41.conf>
102<confdir:pcm/surround50.conf>
103<confdir:pcm/surround51.conf>
104
105ICH4.pcm.surround51.0 {
106	@args [ CARD ]
107	@args.CARD {
108		type string
109	}
110	type softvol
111	slave.pcm {
112		type hooks
113		slave.pcm {
114			type hw
115			card $CARD
116			channels 6
117		}
118		hooks.0 {
119			type ctl_elems
120			hook_args [
121			{
122				name "Channel Mode"
123				preserve true
124				value "6ch"
125				lock true
126				optional true
127			}
128			# for old drivers
129			{
130				name "Line-In As Surround"
131				preserve true
132				value true
133				optional true
134			}
135			{
136				name "Mic As Center/LFE"
137				preserve true
138				value true
139				optional true
140			}
141			{
142				name "Surround Down Mix"
143				preserve true
144				value off
145				lock true
146				optional true
147			}
148			{
149				name "Center/LFE Down Mix"
150				preserve true
151				value off
152				lock true
153				optional true
154			}
155			]
156		}
157	}
158	control {
159		name "PCM Playback Volume"
160		card $CARD
161	}
162}
163
164<confdir:pcm/iec958.conf>
165
166ICH4.pcm.iec958.0 {
167	@args [ CARD AES0 AES1 AES2 AES3 ]
168	@args.CARD {
169		type string
170	}
171	@args.AES0 {
172		type integer
173	}
174	@args.AES1 {
175		type integer
176	}
177	@args.AES2 {
178		type integer
179	}
180	@args.AES3 {
181		type integer
182	}
183	type hooks
184	slave.pcm {
185		type hw
186		card $CARD
187		device 4
188	}
189	hooks.0 {
190		type ctl_elems
191		hook_args [
192			{
193				name "IEC958 Playback AC97-SPSA"
194				lock true
195				preserve true
196				value 3
197				optional true
198			}
199			{
200				name "IEC958 Playback Default"
201				lock true
202				preserve true
203				value [ $AES0 $AES1 $AES2 $AES3 ]
204			}
205			{
206				name "IEC958 Playback Switch"
207				lock true
208				preserve true
209				value true
210			}
211		]
212	}
213}
214