1# 2# Configuration for the CMI8738 chip with 4/6 multi-channel support 3# 4 5<confdir:pcm/front.conf> 6 7CMI8738-MC6.pcm.front.0 { 8 @args [ CARD ] 9 @args.CARD { 10 type string 11 } 12 type hw 13 card $CARD 14} 15 16# default with dmix/dsnoop 17CMI8738-MC6.pcm.default { 18 @args [ CARD ] 19 @args.CARD { 20 type string 21 } 22 type asym 23 playback.pcm { 24 type plug 25 slave.pcm { 26 @func concat 27 strings [ "dmix:" $CARD ] 28 } 29 } 30 capture.pcm { 31 type plug 32 slave.pcm { 33 @func concat 34 strings [ "dsnoop:" $CARD ] 35 } 36 } 37} 38 39<confdir:pcm/rear.conf> 40 41# 2nd DAC 42# FIXME: we need a volume attenuator for rear channel. 43CMI8738-MC6.pcm.rear.0 { 44 @args [ CARD ] 45 @args.CARD { 46 type string 47 } 48 type hw 49 card $CARD 50 device 1 51} 52 53<confdir:pcm/surround40.conf> 54 55CMI8738-MC6.pcm.surround40.0 { 56 @args [ CARD ] 57 @args.CARD { 58 type string 59 } 60 type hooks 61 slave.pcm { 62 type hw 63 card $CARD 64 device 1 65 channels 4 66 } 67 hooks.0 { 68 type ctl_elems 69 hook_args [ 70 { 71 name "Four Channel Mode" 72 lock true 73 preserve true 74 value false 75 } 76 ] 77 } 78} 79 80<confdir:pcm/surround41.conf> 81<confdir:pcm/surround50.conf> 82<confdir:pcm/surround51.conf> 83 84CMI8738-MC6.pcm.surround51.0 { 85 @args [ CARD ] 86 @args.CARD { 87 type string 88 } 89 type hooks 90 slave.pcm { 91 type hw 92 card $CARD 93 device 1 94 channels 6 95 } 96 hooks.0 { 97 type ctl_elems 98 hook_args [ 99 { 100 name "Four Channel Mode" 101 lock true 102 preserve true 103 value false 104 } 105 ] 106 } 107} 108 109<confdir:pcm/iec958.conf> 110 111CMI8738-MC6.pcm.iec958.0 { 112 @args [ CARD AES0 AES1 AES2 AES3 ] 113 @args.CARD { 114 type string 115 } 116 @args.AES0 { 117 type integer 118 } 119 @args.AES1 { 120 type integer 121 } 122 @args.AES2 { 123 type integer 124 } 125 @args.AES3 { 126 type integer 127 } 128 type asym 129 playback.pcm { 130 type hooks 131 slave.pcm { 132 type hw 133 card $CARD 134 device 2 135 } 136 hooks.0 { 137 type ctl_elems 138 hook_args [ 139 { 140 interface PCM 141 name "IEC958 Playback PCM Stream" 142 device 2 143 lock true 144 preserve true 145 value [ $AES0 $AES1 $AES2 $AES3 ] 146 } 147 { 148 name "IEC958 Loop" 149 lock true 150 preserve true 151 value off 152 } 153 ] 154 } 155 } 156 capture.pcm { 157 type hw 158 card $CARD 159 device 2 160 } 161} 162