# # Configuration for the CMIPCI chip # cards.CMIPCI.pcm.front.0 { @args [ CARD ] @args.CARD { type string } type hw card $CARD device 0 } # 2nd DAC # FIXME: we need a volume attenuator for rear channel. cards.CMIPCI.pcm.rear.0 { @args [ CARD ] @args.CARD { type string } type hw card $CARD device 1 } # for the recent CM8738 chips # cards.CMIPCI.pcm.surround40.0 "cards.CMIPCI.pcm.front.0" cards.CMIPCI.pcm.surround51.0 "cards.CMIPCI.pcm.front.0" # for the old CM8738 with 2nd DAC for rear cards.CMIPCI.pcm.surround40.0 { @args [ CARD ] @args.CARD { type string } type multi master 1 slaves [ { pcm { @func concat strings [ "cards.CMIPCI.pcm.front.0:CARD=" $CARD ] } channels 2 } { pcm { @func concat strings [ "cards.CMIPCI.pcm.rear.0:CARD=" $CARD ] } channels 2 } ] bindings [ { slave 0 channel 0 } { slave 0 channel 1 } { slave 1 channel 0 } { slave 1 channel 1 } ] } cards.CMIPCI.pcm.iec958.0 { @args [ CARD DEV AES0 AES1 AES2 AES3 ] @args.CARD { type string } @args.DEV { type integer } @args.AES0 { type integer } @args.AES1 { type integer } @args.AES2 { type integer } @args.AES3 { type integer } type hooks hooks.0 { type ctl_elems hook_args [ { name "IEC958 Enable" value 1 lock true preserve true } { interface PCM name "IEC958 Playback PCM Stream" lock true preserve true value [ $AES0 $AES1 $AES2 $AES3 ] } ] } }