1# 2# Configuration for the Intel HD audio (ICH6/ICH7) 3# 4 5<confdir:pcm/front.conf> 6 7HDA-Intel.pcm.front.0 { 8 @args [ CARD ] 9 @args.CARD { 10 type string 11 } 12 type asym 13 playback.pcm { 14 type softvol 15 slave.pcm { 16 type hw 17 card $CARD 18 subdevice 0 19 } 20 control { 21 name "PCM Playback Volume" 22 card $CARD 23 } 24 } 25 capture.pcm { 26 type hw 27 card $CARD 28 } 29} 30 31# default with dmix+softvol & dsnoop 32HDA-Intel.pcm.default { 33 @args [ CARD ] 34 @args.CARD { 35 type string 36 } 37 type asym 38 playback.pcm { 39 type plug 40 slave.pcm { 41 type softvol 42 slave.pcm { 43 @func concat 44 strings [ "dmix:" $CARD ] 45 } 46 control { 47 name "PCM Playback Volume" 48 card $CARD 49 } 50 } 51 } 52 capture.pcm { 53 type plug 54 slave.pcm { 55 type softvol 56 slave.pcm { 57 @func concat 58 strings [ "dsnoop:" $CARD ] 59 } 60 control { 61 name "Digital Capture Volume" 62 card $CARD 63 } 64 min_dB -30.0 65 max_dB 30.0 66 resolution 121 67 } 68 # to avoid possible phase inversions with digital mics 69 route_policy copy 70 } 71 hint.device 0 72} 73 74<confdir:pcm/surround21.conf> 75<confdir:pcm/surround40.conf> 76<confdir:pcm/surround41.conf> 77<confdir:pcm/surround50.conf> 78<confdir:pcm/surround51.conf> 79<confdir:pcm/surround71.conf> 80 81HDA-Intel.pcm.surround40.0 cards.HDA-Intel.pcm.front.0 82HDA-Intel.pcm.surround51.0 cards.HDA-Intel.pcm.front.0 83HDA-Intel.pcm.surround71.0 cards.HDA-Intel.pcm.front.0 84 85<confdir:pcm/iec958.conf> 86 87HDA-Intel.pcm.iec958.0 { 88 @args [ CARD AES0 AES1 AES2 AES3 ] 89 @args.CARD { 90 type string 91 } 92 @args.AES0 { 93 type integer 94 } 95 @args.AES1 { 96 type integer 97 } 98 @args.AES2 { 99 type integer 100 } 101 @args.AES3 { 102 type integer 103 } 104 type asym 105 playback.pcm { 106 type hooks 107 slave.pcm { 108 type hw 109 card $CARD 110 device 1 111 } 112 hooks.0 { 113 type ctl_elems 114 hook_args [ 115 { 116 name "IEC958 Playback Default" 117 index 16 118 optional true 119 lock true 120 preserve true 121 value [ $AES0 $AES1 $AES2 $AES3 ] 122 } 123 { 124 name "IEC958 Playback Switch" 125 index 16 126 optional true 127 value true 128 # if this element is present, skip the rest 129 skip_rest true 130 } 131 { 132 name "IEC958 Playback Default" 133 lock true 134 preserve true 135 value [ $AES0 $AES1 $AES2 $AES3 ] 136 } 137 { 138 name "IEC958 Playback Switch" 139 value true 140 } 141 ] 142 } 143 } 144 capture.pcm { 145 type hooks 146 slave.pcm { 147 type hw 148 card $CARD 149 device 1 150 } 151 hooks.0 { 152 type ctl_elems 153 hook_args [ 154 { 155 name "IEC958 Capture Switch" 156 lock true 157 preserve true 158 value true 159 } 160 ] 161 } 162 } 163 hint.device 1 164} 165 166<confdir:pcm/hdmi.conf> 167 168HDA-Intel.pcm.hdmi.common { 169 @args [ CARD DEVICE CTLINDEX AES0 AES1 AES2 AES3 ] 170 @args.CARD { 171 type string 172 } 173 @args.DEVICE { 174 type integer 175 } 176 @args.CTLINDEX { 177 type integer 178 } 179 @args.AES0 { 180 type integer 181 } 182 @args.AES1 { 183 type integer 184 } 185 @args.AES2 { 186 type integer 187 } 188 @args.AES3 { 189 type integer 190 } 191 type hooks 192 slave.pcm { 193 type hw 194 card $CARD 195 device $DEVICE 196 } 197 hooks.0 { 198 type ctl_elems 199 hook_args [ 200 { 201 name "IEC958 Playback Default" 202 index $CTLINDEX 203 lock true 204 preserve true 205 value [ $AES0 $AES1 $AES2 $AES3 ] 206 } 207 { 208 name "IEC958 Playback Switch" 209 index $CTLINDEX 210 value true 211 } 212 ] 213 } 214 hint.device $DEVICE 215} 216 217HDA-Intel.pcm.hdmi.0 { 218 @args [ CARD AES0 AES1 AES2 AES3 ] 219 @args.CARD { type string } 220 @args.AES0 { type integer } 221 @args.AES1 { type integer } 222 @args.AES2 { type integer } 223 @args.AES3 { type integer } 224 @func refer 225 name { 226 @func concat 227 strings [ 228 "cards.HDA-Intel.pcm.hdmi.common:" 229 "CARD=" $CARD "," 230 "DEVICE=3," 231 "CTLINDEX=0," 232 "AES0=" $AES0 "," 233 "AES1=" $AES1 "," 234 "AES2=" $AES2 "," 235 "AES3=" $AES3 236 ] 237 } 238} 239 240HDA-Intel.pcm.hdmi.1 { 241 @args [ CARD AES0 AES1 AES2 AES3 ] 242 @args.CARD { type string } 243 @args.AES0 { type integer } 244 @args.AES1 { type integer } 245 @args.AES2 { type integer } 246 @args.AES3 { type integer } 247 @func refer 248 name { 249 @func concat 250 strings [ 251 "cards.HDA-Intel.pcm.hdmi.common:" 252 "CARD=" $CARD "," 253 "DEVICE=7," 254 "CTLINDEX=1," 255 "AES0=" $AES0 "," 256 "AES1=" $AES1 "," 257 "AES2=" $AES2 "," 258 "AES3=" $AES3 259 ] 260 } 261} 262 263HDA-Intel.pcm.hdmi.2 { 264 @args [ CARD AES0 AES1 AES2 AES3 ] 265 @args.CARD { type string } 266 @args.AES0 { type integer } 267 @args.AES1 { type integer } 268 @args.AES2 { type integer } 269 @args.AES3 { type integer } 270 @func refer 271 name { 272 @func concat 273 strings [ 274 "cards.HDA-Intel.pcm.hdmi.common:" 275 "CARD=" $CARD "," 276 "DEVICE=8," 277 "CTLINDEX=2," 278 "AES0=" $AES0 "," 279 "AES1=" $AES1 "," 280 "AES2=" $AES2 "," 281 "AES3=" $AES3 282 ] 283 } 284} 285 286HDA-Intel.pcm.hdmi.3 { 287 @args [ CARD AES0 AES1 AES2 AES3 ] 288 @args.CARD { type string } 289 @args.AES0 { type integer } 290 @args.AES1 { type integer } 291 @args.AES2 { type integer } 292 @args.AES3 { type integer } 293 @func refer 294 name { 295 @func concat 296 strings [ 297 "cards.HDA-Intel.pcm.hdmi.common:" 298 "CARD=" $CARD "," 299 "DEVICE=9," 300 "CTLINDEX=3," 301 "AES0=" $AES0 "," 302 "AES1=" $AES1 "," 303 "AES2=" $AES2 "," 304 "AES3=" $AES3 305 ] 306 } 307} 308 309HDA-Intel.pcm.hdmi.4 { 310 @args [ CARD AES0 AES1 AES2 AES3 ] 311 @args.CARD { type string } 312 @args.AES0 { type integer } 313 @args.AES1 { type integer } 314 @args.AES2 { type integer } 315 @args.AES3 { type integer } 316 @func refer 317 name { 318 @func concat 319 strings [ 320 "cards.HDA-Intel.pcm.hdmi.common:" 321 "CARD=" $CARD "," 322 "DEVICE=10," 323 "CTLINDEX=4," 324 "AES0=" $AES0 "," 325 "AES1=" $AES1 "," 326 "AES2=" $AES2 "," 327 "AES3=" $AES3 328 ] 329 } 330} 331 332HDA-Intel.pcm.hdmi.5 { 333 @args [ CARD AES0 AES1 AES2 AES3 ] 334 @args.CARD { type string } 335 @args.AES0 { type integer } 336 @args.AES1 { type integer } 337 @args.AES2 { type integer } 338 @args.AES3 { type integer } 339 @func refer 340 name { 341 @func concat 342 strings [ 343 "cards.HDA-Intel.pcm.hdmi.common:" 344 "CARD=" $CARD "," 345 "DEVICE=11," 346 "CTLINDEX=5," 347 "AES0=" $AES0 "," 348 "AES1=" $AES1 "," 349 "AES2=" $AES2 "," 350 "AES3=" $AES3 351 ] 352 } 353} 354 355HDA-Intel.pcm.hdmi.6 { 356 @args [ CARD AES0 AES1 AES2 AES3 ] 357 @args.CARD { type string } 358 @args.AES0 { type integer } 359 @args.AES1 { type integer } 360 @args.AES2 { type integer } 361 @args.AES3 { type integer } 362 @func refer 363 name { 364 @func concat 365 strings [ 366 "cards.HDA-Intel.pcm.hdmi.common:" 367 "CARD=" $CARD "," 368 "DEVICE=12," 369 "CTLINDEX=6," 370 "AES0=" $AES0 "," 371 "AES1=" $AES1 "," 372 "AES2=" $AES2 "," 373 "AES3=" $AES3 374 ] 375 } 376} 377 378HDA-Intel.pcm.hdmi.7 { 379 @args [ CARD AES0 AES1 AES2 AES3 ] 380 @args.CARD { type string } 381 @args.AES0 { type integer } 382 @args.AES1 { type integer } 383 @args.AES2 { type integer } 384 @args.AES3 { type integer } 385 @func refer 386 name { 387 @func concat 388 strings [ 389 "cards.HDA-Intel.pcm.hdmi.common:" 390 "CARD=" $CARD "," 391 "DEVICE=13," 392 "CTLINDEX=7," 393 "AES0=" $AES0 "," 394 "AES1=" $AES1 "," 395 "AES2=" $AES2 "," 396 "AES3=" $AES3 397 ] 398 } 399} 400 401HDA-Intel.pcm.hdmi.8 { 402 @args [ CARD AES0 AES1 AES2 AES3 ] 403 @args.CARD { type string } 404 @args.AES0 { type integer } 405 @args.AES1 { type integer } 406 @args.AES2 { type integer } 407 @args.AES3 { type integer } 408 @func refer 409 name { 410 @func concat 411 strings [ 412 "cards.HDA-Intel.pcm.hdmi.common:" 413 "CARD=" $CARD "," 414 "DEVICE=14," 415 "CTLINDEX=8," 416 "AES0=" $AES0 "," 417 "AES1=" $AES1 "," 418 "AES2=" $AES2 "," 419 "AES3=" $AES3 420 ] 421 } 422} 423 424HDA-Intel.pcm.hdmi.9 { 425 @args [ CARD AES0 AES1 AES2 AES3 ] 426 @args.CARD { type string } 427 @args.AES0 { type integer } 428 @args.AES1 { type integer } 429 @args.AES2 { type integer } 430 @args.AES3 { type integer } 431 @func refer 432 name { 433 @func concat 434 strings [ 435 "cards.HDA-Intel.pcm.hdmi.common:" 436 "CARD=" $CARD "," 437 "DEVICE=15," 438 "CTLINDEX=9," 439 "AES0=" $AES0 "," 440 "AES1=" $AES1 "," 441 "AES2=" $AES2 "," 442 "AES3=" $AES3 443 ] 444 } 445} 446 447HDA-Intel.pcm.hdmi.10 { 448 @args [ CARD AES0 AES1 AES2 AES3 ] 449 @args.CARD { type string } 450 @args.AES0 { type integer } 451 @args.AES1 { type integer } 452 @args.AES2 { type integer } 453 @args.AES3 { type integer } 454 @func refer 455 name { 456 @func concat 457 strings [ 458 "cards.HDA-Intel.pcm.hdmi.common:" 459 "CARD=" $CARD "," 460 "DEVICE=16," 461 "CTLINDEX=10," 462 "AES0=" $AES0 "," 463 "AES1=" $AES1 "," 464 "AES2=" $AES2 "," 465 "AES3=" $AES3 466 ] 467 } 468} 469 470<confdir:pcm/modem.conf> 471 472HDA-Intel.pcm.modem.0 { 473 @args [ CARD ] 474 @args.CARD { 475 type string 476 } 477 type hw 478 card $CARD 479 device 6 480 hint.show off 481} 482