jpayne@68: # jpayne@68: # Configuration for the CMI8338/8738 chip (w/o multi-channel support) jpayne@68: # using software IEC958 subframe conversion jpayne@68: # jpayne@68: jpayne@68: jpayne@68: jpayne@68: CMI8338-SWIEC.pcm.front.0 { jpayne@68: @args [ CARD ] jpayne@68: @args.CARD { jpayne@68: type string jpayne@68: } jpayne@68: type hw jpayne@68: card $CARD jpayne@68: } jpayne@68: jpayne@68: # default with dmix/dsnoop jpayne@68: CMI8338-SWIEC.pcm.default { jpayne@68: @args [ CARD ] jpayne@68: @args.CARD { jpayne@68: type string jpayne@68: } jpayne@68: type asym jpayne@68: playback.pcm { jpayne@68: type plug jpayne@68: slave.pcm { jpayne@68: @func concat jpayne@68: strings [ "dmix:" $CARD ] jpayne@68: } jpayne@68: } jpayne@68: capture.pcm { jpayne@68: type plug jpayne@68: slave.pcm { jpayne@68: @func concat jpayne@68: strings [ "dsnoop:" $CARD ] jpayne@68: } jpayne@68: } jpayne@68: } jpayne@68: jpayne@68: jpayne@68: jpayne@68: # 2nd DAC jpayne@68: # FIXME: we need a volume attenuator for rear channel. jpayne@68: CMI8338-SWIEC.pcm.rear.0 { jpayne@68: @args [ CARD ] jpayne@68: @args.CARD { jpayne@68: type string jpayne@68: } jpayne@68: type hw jpayne@68: card $CARD jpayne@68: device 1 jpayne@68: } jpayne@68: jpayne@68: jpayne@68: jpayne@68: # for the old CM8738 with 2nd DAC for rear jpayne@68: CMI8338-SWIEC.pcm.surround40.0 { jpayne@68: @args [ CARD ] jpayne@68: @args.CARD { jpayne@68: type string jpayne@68: } jpayne@68: type multi jpayne@68: master 1 jpayne@68: slaves [ jpayne@68: { jpayne@68: pcm { jpayne@68: @func concat jpayne@68: strings [ jpayne@68: "cards.CMI8338-SWIEC.pcm.front.0:CARD=" $CARD jpayne@68: ] jpayne@68: } jpayne@68: channels 2 jpayne@68: } jpayne@68: { jpayne@68: pcm { jpayne@68: @func concat jpayne@68: strings [ jpayne@68: "cards.CMI8338-SWIEC.pcm.rear.0:CARD=" $CARD jpayne@68: ] jpayne@68: } jpayne@68: channels 2 jpayne@68: } jpayne@68: ] jpayne@68: bindings [ jpayne@68: { slave 0 channel 0 } jpayne@68: { slave 0 channel 1 } jpayne@68: { slave 1 channel 0 } jpayne@68: { slave 1 channel 1 } jpayne@68: ] jpayne@68: } jpayne@68: jpayne@68: jpayne@68: jpayne@68: CMI8338-SWIEC.pcm.iec958.0 { jpayne@68: @args [ CARD AES0 AES1 AES2 AES3 ] jpayne@68: @args.CARD { jpayne@68: type string jpayne@68: } jpayne@68: @args.AES0 { jpayne@68: type integer jpayne@68: } jpayne@68: @args.AES1 { jpayne@68: type integer jpayne@68: } jpayne@68: @args.AES2 { jpayne@68: type integer jpayne@68: } jpayne@68: @args.AES3 { jpayne@68: type integer jpayne@68: } jpayne@68: type asym jpayne@68: playback.pcm { jpayne@68: type iec958 jpayne@68: slave.pcm { jpayne@68: type hw jpayne@68: card $CARD jpayne@68: device 2 jpayne@68: } jpayne@68: status [ $AES0 $AES1 $AES2 $AES3 ] jpayne@68: preamble.z 3 jpayne@68: preamble.y 5 jpayne@68: preamble.x 9 jpayne@68: } jpayne@68: capture.pcm { jpayne@68: type hw jpayne@68: card $CARD jpayne@68: device 2 jpayne@68: } jpayne@68: }