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