# # Configuration for the ICE1724 (Envy24HT) chip # # default with dmix & dsnoop ICE1724.pcm.default { @args [ CARD ] @args.CARD { type string } type asym playback.pcm { type plug slave.pcm { @func concat strings [ "dmix:" $CARD ",FORMAT=S32_LE" ] } } capture.pcm { type plug slave.pcm { @func concat strings [ "dsnoop:" $CARD ",FORMAT=S32_LE" ] } } } ICE1724.pcm.front.0 { @args [ CARD ] @args.CARD { type string } type hw card $CARD } ICE1724.pcm.rear.0 { @args [ CARD ] @args.CARD { type string } type hw card $CARD device 2 subdevice 1 } ICE1724.pcm.center_lfe.0 { @args [ CARD ] @args.CARD { type string } type hw card $CARD device 2 } ICE1724.pcm.side.0 { @args [ CARD ] @args.CARD { type string } type hw card $CARD device 2 subdevice 2 } ICE1724.pcm.surround40.0 { @args [ CARD ] @args.CARD { type string } type route ttable.0.0 1 ttable.1.1 1 ttable.2.4 1 ttable.3.5 1 slave { channels 6 pcm { type hw card $CARD } } } ICE1724.pcm.surround51.0 { @args [ CARD ] @args.CARD { type string } type route ttable.0.0 1 ttable.1.1 1 ttable.2.4 1 ttable.3.5 1 ttable.4.2 1 ttable.5.3 1 slave { channels 6 pcm { type hw card $CARD } } } ICE1724.pcm.surround71.0 { @args [ CARD ] @args.CARD { type string } type route ttable.0.0 1 ttable.1.1 1 ttable.2.4 1 ttable.3.5 1 ttable.4.2 1 ttable.5.3 1 ttable.6.6 1 ttable.7.7 1 slave { channels 8 pcm { type hw card $CARD } } } ICE1724.pcm.iec958.0 { @args [ CARD AES0 AES1 AES2 AES3 ] @args.CARD { type string } @args.AES0 { type integer } @args.AES1 { type integer } @args.AES2 { type integer } @args.AES3 { type integer } type asym playback.pcm { type linear slave.pcm { type hooks slave.pcm { type hw card $CARD device 1 } hooks.0 { type ctl_elems hook_args [ { interface MIXER name "IEC958 Output Switch" lock true preserve true value true } { interface PCM name "IEC958 Playback Default" device 1 lock true preserve true value [ $AES0 $AES1 $AES2 $AES3 ] } ] } } slave.format S32_LE } capture.pcm { type linear slave.pcm { type hooks slave.pcm { type hw card $CARD device 1 } hooks.0 { type ctl_elems hook_args [ { interface MIXER name "IEC958 Capture Switch" lock true preserve true value true } ] } } slave.format S32_LE } }