| # |
| # Configuration for the CMI8738 chip with 4/6 multi-channel support |
| # |
| |
| <confdir:pcm/front.conf> |
| |
| CMI8738-MC6.pcm.front.0 { |
| @args [ CARD ] |
| @args.CARD { |
| type string |
| } |
| type hw |
| card $CARD |
| } |
| |
| # default with dmix/dsnoop |
| CMI8738-MC6.pcm.default { |
| @args [ CARD ] |
| @args.CARD { |
| type string |
| } |
| type asym |
| playback.pcm { |
| type plug |
| slave.pcm { |
| @func concat |
| strings [ "dmix:" $CARD ] |
| } |
| } |
| capture.pcm { |
| type plug |
| slave.pcm { |
| @func concat |
| strings [ "dsnoop:" $CARD ] |
| } |
| } |
| } |
| |
| <confdir:pcm/rear.conf> |
| |
| # 2nd DAC |
| # FIXME: we need a volume attenuator for rear channel. |
| CMI8738-MC6.pcm.rear.0 { |
| @args [ CARD ] |
| @args.CARD { |
| type string |
| } |
| type hw |
| card $CARD |
| device 1 |
| } |
| |
| <confdir:pcm/surround40.conf> |
| |
| CMI8738-MC6.pcm.surround40.0 { |
| @args [ CARD ] |
| @args.CARD { |
| type string |
| } |
| type hooks |
| slave.pcm { |
| type hw |
| card $CARD |
| device 1 |
| channels 4 |
| } |
| hooks.0 { |
| type ctl_elems |
| hook_args [ |
| { |
| name "Four Channel Mode" |
| lock true |
| preserve true |
| value false |
| } |
| ] |
| } |
| } |
| |
| <confdir:pcm/surround21.conf> |
| <confdir:pcm/surround41.conf> |
| <confdir:pcm/surround50.conf> |
| <confdir:pcm/surround51.conf> |
| |
| CMI8738-MC6.pcm.surround51.0 { |
| @args [ CARD ] |
| @args.CARD { |
| type string |
| } |
| type hooks |
| slave.pcm { |
| type hw |
| card $CARD |
| device 1 |
| channels 6 |
| } |
| hooks.0 { |
| type ctl_elems |
| hook_args [ |
| { |
| name "Four Channel Mode" |
| lock true |
| preserve true |
| value false |
| } |
| ] |
| } |
| } |
| |
| <confdir:pcm/iec958.conf> |
| |
| CMI8738-MC6.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 hooks |
| slave.pcm { |
| type hw |
| card $CARD |
| device 2 |
| } |
| hooks.0 { |
| type ctl_elems |
| hook_args [ |
| { |
| interface PCM |
| name "IEC958 Playback PCM Stream" |
| device 2 |
| lock true |
| preserve true |
| value [ $AES0 $AES1 $AES2 $AES3 ] |
| } |
| { |
| name "IEC958 Loop" |
| lock true |
| preserve true |
| value off |
| } |
| ] |
| } |
| } |
| capture.pcm { |
| type hw |
| card $CARD |
| device 2 |
| } |
| } |