CMI8738-MC8.conf 2.9 KB

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