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