1# 2# Configuration for the CMI8768 chip with 8 multi-channel support 3# 4 5<confdir:pcm/front.conf> 6 7CMI8738-MC8.pcm.front.0 { 8 @args [ CARD ] 9 @args.CARD { 10 type string 11 } 12 type softvol 13 slave.pcm { 14 type hw 15 card $CARD 16 } 17 control { 18 name "PCM Playback Volume" 19 card $CARD 20 } 21} 22 23# default with dmix+softvol & dsnoop 24CMI8738-MC8.pcm.default { 25 @args [ CARD ] 26 @args.CARD { 27 type string 28 } 29 type asym 30 playback.pcm { 31 type plug 32 slave.pcm { 33 type softvol 34 slave.pcm { 35 @func concat 36 strings [ "dmix:" $CARD ] 37 } 38 control { 39 name "PCM Playback Volume" 40 card $CARD 41 } 42 } 43 } 44 capture.pcm { 45 type plug 46 slave.pcm { 47 @func concat 48 strings [ "dsnoop:" $CARD ] 49 } 50 } 51} 52 53<confdir:pcm/rear.conf> 54 55# 2nd DAC 56CMI8738-MC8.pcm.rear.0 { 57 @args [ CARD ] 58 @args.CARD { 59 type string 60 } 61 type softvol 62 slave.pcm { 63 type hw 64 card $CARD 65 device 1 66 } 67 control { 68 name "PCM Playback Volume" 69 card $CARD 70 } 71} 72 73<confdir:pcm/surround40.conf> 74 75CMI8738-MC8.pcm.surround40.0 { 76 @args [ CARD ] 77 @args.CARD { 78 type string 79 } 80 type softvol 81 slave.pcm { 82 type hooks 83 slave.pcm { 84 type hw 85 card $CARD 86 device 1 87 channels 4 88 } 89 hooks.0 { 90 type ctl_elems 91 hook_args [ 92 { 93 name "Four Channel Mode" 94 lock true 95 preserve true 96 value false 97 } 98 ] 99 } 100 } 101 control { 102 name "PCM Playback Volume" 103 card $CARD 104 } 105} 106 107 108<confdir:pcm/surround21.conf> 109<confdir:pcm/surround41.conf> 110<confdir:pcm/surround50.conf> 111<confdir:pcm/surround51.conf> 112 113CMI8738-MC8.pcm.surround51.0 { 114 @args [ CARD ] 115 @args.CARD { 116 type string 117 } 118 type softvol 119 slave.pcm { 120 type hooks 121 slave.pcm { 122 type hw 123 card $CARD 124 device 1 125 channels 6 126 } 127 hooks.0 { 128 type ctl_elems 129 hook_args [ 130 { 131 name "Four Channel Mode" 132 lock true 133 preserve true 134 value false 135 } 136 ] 137 } 138 } 139 control { 140 name "PCM Playback Volume" 141 card $CARD 142 } 143} 144 145<confdir:pcm/surround71.conf> 146 147CMI8738-MC8.pcm.surround71.0 { 148 @args [ CARD ] 149 @args.CARD { 150 type string 151 } 152 type softvol 153 slave.pcm { 154 type hooks 155 slave.pcm { 156 type hw 157 card $CARD 158 device 1 159 channels 8 160 } 161 hooks.0 { 162 type ctl_elems 163 hook_args [ 164 { 165 name "Four Channel Mode" 166 lock true 167 preserve true 168 value false 169 } 170 ] 171 } 172 } 173 control { 174 name "PCM Playback Volume" 175 card $CARD 176 } 177} 178 179<confdir:pcm/iec958.conf> 180 181CMI8738-MC8.pcm.iec958.0 { 182 @args [ CARD AES0 AES1 AES2 AES3 ] 183 @args.CARD { 184 type string 185 } 186 @args.AES0 { 187 type integer 188 } 189 @args.AES1 { 190 type integer 191 } 192 @args.AES2 { 193 type integer 194 } 195 @args.AES3 { 196 type integer 197 } 198 type asym 199 playback.pcm { 200 type hooks 201 slave.pcm { 202 type hw 203 card $CARD 204 device 2 205 } 206 hooks.0 { 207 type ctl_elems 208 hook_args [ 209 { 210 interface PCM 211 name "IEC958 Playback PCM Stream" 212 device 2 213 lock true 214 preserve true 215 value [ $AES0 $AES1 $AES2 $AES3 ] 216 } 217 { 218 name "IEC958 Loop" 219 lock true 220 preserve true 221 value off 222 } 223 ] 224 } 225 } 226 capture.pcm { 227 type hw 228 card $CARD 229 device 2 230 } 231} 232