VIA8237.conf 2.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191
  1. #
  2. # Configuration for the VIA8237 chip with 4/6 multi-channel support
  3. #
  4. <confdir:pcm/front.conf>
  5. VIA8237.pcm.front.0 {
  6. @args [ CARD ]
  7. @args.CARD {
  8. type string
  9. }
  10. type hw
  11. card $CARD
  12. }
  13. # default with softvol/dsnoop
  14. # VIA8237 supports multi-playback
  15. VIA8237.pcm.default {
  16. @args [ CARD ]
  17. @args.CARD {
  18. type string
  19. }
  20. type asym
  21. playback.pcm {
  22. type plug
  23. slave.pcm {
  24. type softvol
  25. slave.pcm {
  26. type hw
  27. card $CARD
  28. }
  29. control {
  30. name "PCM Playback Volume"
  31. card $CARD
  32. }
  33. }
  34. }
  35. capture.pcm {
  36. type plug
  37. slave.pcm {
  38. @func concat
  39. strings [ "dsnoop:" $CARD ]
  40. }
  41. }
  42. }
  43. <confdir:pcm/surround40.conf>
  44. VIA8237.pcm.surround40.0 {
  45. @args [ CARD ]
  46. @args.CARD {
  47. type string
  48. }
  49. type hooks
  50. slave.pcm {
  51. type hw
  52. card $CARD
  53. device 1
  54. channels 4
  55. }
  56. hooks.0 {
  57. type ctl_elems
  58. hook_args [
  59. {
  60. name "Channel Mode"
  61. preserve true
  62. value "4ch"
  63. lock true
  64. optional true
  65. }
  66. {
  67. name "Surround Down Mix"
  68. preserve true
  69. value off
  70. lock true
  71. optional true
  72. }
  73. ]
  74. }
  75. }
  76. <confdir:pcm/surround21.conf>
  77. <confdir:pcm/surround41.conf>
  78. <confdir:pcm/surround50.conf>
  79. <confdir:pcm/surround51.conf>
  80. VIA8237.pcm.surround51.0 {
  81. @args [ CARD ]
  82. @args.CARD {
  83. type string
  84. }
  85. type route
  86. ttable.0.0 1
  87. ttable.1.1 1
  88. ttable.2.4 1
  89. ttable.3.5 1
  90. ttable.4.2 1
  91. ttable.5.3 1
  92. slave.pcm {
  93. type hooks
  94. slave.pcm {
  95. type hw
  96. card $CARD
  97. device 1
  98. channels 6
  99. }
  100. hooks.0 {
  101. type ctl_elems
  102. hook_args [
  103. {
  104. name "Channel Mode"
  105. preserve true
  106. value "6ch"
  107. lock true
  108. optional true
  109. }
  110. {
  111. name "Surround Down Mix"
  112. preserve true
  113. value off
  114. lock true
  115. optional true
  116. }
  117. {
  118. name "Center/LFE Down Mix"
  119. preserve true
  120. value off
  121. lock true
  122. optional true
  123. }
  124. ]
  125. }
  126. }
  127. slave.channels 6
  128. }
  129. <confdir:pcm/iec958.conf>
  130. VIA8237.pcm.iec958.0 {
  131. @args [ CARD AES0 AES1 AES2 AES3 ]
  132. @args.CARD {
  133. type string
  134. }
  135. @args.AES0 {
  136. type integer
  137. }
  138. @args.AES1 {
  139. type integer
  140. }
  141. @args.AES2 {
  142. type integer
  143. }
  144. @args.AES3 {
  145. type integer
  146. }
  147. type hooks
  148. slave.pcm {
  149. type hw
  150. card $CARD
  151. subdevice 3
  152. }
  153. hooks.0 {
  154. type ctl_elems
  155. hook_args [
  156. {
  157. name "IEC958 Playback AC97-SPSA"
  158. lock true
  159. preserve true
  160. value 3
  161. }
  162. {
  163. name "IEC958 Playback Default"
  164. lock true
  165. preserve true
  166. value [ $AES0 $AES1 $AES2 $AES3 ]
  167. }
  168. {
  169. name "IEC958 Playback Switch"
  170. lock true
  171. preserve true
  172. value true
  173. }
  174. {
  175. name "IEC958 Output Switch"
  176. lock true
  177. preserve true
  178. value true
  179. }
  180. ]
  181. }
  182. }