Kconfig 4.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222
  1. # Helper to resolve issues with configs that have SPI enabled but I2C
  2. # modular, meaning we can't build the codec driver in with I2C support.
  3. # We use an ordered list of conditional defaults to pick the appropriate
  4. # setting - SPI can't be modular so that case doesn't need to be covered.
  5. config SND_SOC_I2C_AND_SPI
  6. tristate
  7. default m if I2C=m
  8. default y if I2C=y
  9. default y if SPI_MASTER=y
  10. config SND_SOC_ALL_CODECS
  11. tristate "Build all ASoC CODEC drivers"
  12. select SND_SOC_L3
  13. select SND_SOC_AC97_CODEC if SND_SOC_AC97_BUS
  14. select SND_SOC_AD1836 if SPI_MASTER
  15. select SND_SOC_AD1938 if SPI_MASTER
  16. select SND_SOC_AD1980 if SND_SOC_AC97_BUS
  17. select SND_SOC_AD73311 if I2C
  18. select SND_SOC_AK4104 if SPI_MASTER
  19. select SND_SOC_AK4535 if I2C
  20. select SND_SOC_AK4642 if I2C
  21. select SND_SOC_CS4270 if I2C
  22. select SND_SOC_MAX9877 if I2C
  23. select SND_SOC_PCM3008
  24. select SND_SOC_SPDIF
  25. select SND_SOC_SSM2602 if I2C
  26. select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
  27. select SND_SOC_TLV320AIC23 if I2C
  28. select SND_SOC_TLV320AIC26 if SPI_MASTER
  29. select SND_SOC_TLV320AIC3X if I2C
  30. select SND_SOC_TWL4030 if TWL4030_CORE
  31. select SND_SOC_UDA134X
  32. select SND_SOC_UDA1380 if I2C
  33. select SND_SOC_WM8350 if MFD_WM8350
  34. select SND_SOC_WM8400 if MFD_WM8400
  35. select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
  36. select SND_SOC_WM8523 if I2C
  37. select SND_SOC_WM8580 if I2C
  38. select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
  39. select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
  40. select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
  41. select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
  42. select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
  43. select SND_SOC_WM8900 if I2C
  44. select SND_SOC_WM8903 if I2C
  45. select SND_SOC_WM8940 if I2C
  46. select SND_SOC_WM8960 if I2C
  47. select SND_SOC_WM8961 if I2C
  48. select SND_SOC_WM8971 if I2C
  49. select SND_SOC_WM8974 if I2C
  50. select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
  51. select SND_SOC_WM8990 if I2C
  52. select SND_SOC_WM8993 if I2C
  53. select SND_SOC_WM9081 if I2C
  54. select SND_SOC_WM9705 if SND_SOC_AC97_BUS
  55. select SND_SOC_WM9712 if SND_SOC_AC97_BUS
  56. select SND_SOC_WM9713 if SND_SOC_AC97_BUS
  57. help
  58. Normally ASoC codec drivers are only built if a machine driver which
  59. uses them is also built since they are only usable with a machine
  60. driver. Selecting this option will allow these drivers to be built
  61. without an explicit machine driver for test and development purposes.
  62. Support for the bus types used to access the codecs to be built must
  63. be selected separately.
  64. If unsure select "N".
  65. config SND_SOC_WM_HUBS
  66. tristate
  67. default y if SND_SOC_WM8993=y
  68. default m if SND_SOC_WM8993=m
  69. config SND_SOC_AC97_CODEC
  70. tristate
  71. select SND_AC97_CODEC
  72. config SND_SOC_AD1836
  73. tristate
  74. config SND_SOC_AD1938
  75. tristate
  76. config SND_SOC_AD1980
  77. tristate
  78. config SND_SOC_AD73311
  79. tristate
  80. config SND_SOC_AK4104
  81. tristate
  82. config SND_SOC_AK4535
  83. tristate
  84. config SND_SOC_AK4642
  85. tristate
  86. # Cirrus Logic CS4270 Codec
  87. config SND_SOC_CS4270
  88. tristate
  89. # Cirrus Logic CS4270 Codec VD = 3.3V Errata
  90. # Select if you are affected by the errata where the part will not function
  91. # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
  92. # not select any sample rates that require MCLK to be divided by 1.5.
  93. config SND_SOC_CS4270_VD33_ERRATA
  94. bool
  95. depends on SND_SOC_CS4270
  96. config SND_SOC_CX20442
  97. tristate
  98. config SND_SOC_L3
  99. tristate
  100. config SND_SOC_PCM3008
  101. tristate
  102. config SND_SOC_SPDIF
  103. tristate
  104. config SND_SOC_SSM2602
  105. tristate
  106. config SND_SOC_STAC9766
  107. tristate
  108. config SND_SOC_TLV320AIC23
  109. tristate
  110. config SND_SOC_TLV320AIC26
  111. tristate "TI TLV320AIC26 Codec support" if SND_SOC_OF_SIMPLE
  112. depends on SPI
  113. config SND_SOC_TLV320AIC3X
  114. tristate
  115. config SND_SOC_TWL4030
  116. tristate
  117. config SND_SOC_UDA134X
  118. tristate
  119. config SND_SOC_UDA1380
  120. tristate
  121. config SND_SOC_WM8350
  122. tristate
  123. config SND_SOC_WM8400
  124. tristate
  125. config SND_SOC_WM8510
  126. tristate
  127. config SND_SOC_WM8523
  128. tristate
  129. config SND_SOC_WM8580
  130. tristate
  131. config SND_SOC_WM8728
  132. tristate
  133. config SND_SOC_WM8731
  134. tristate
  135. config SND_SOC_WM8750
  136. tristate
  137. config SND_SOC_WM8753
  138. tristate
  139. config SND_SOC_WM8776
  140. tristate
  141. config SND_SOC_WM8900
  142. tristate
  143. config SND_SOC_WM8903
  144. tristate
  145. config SND_SOC_WM8940
  146. tristate
  147. config SND_SOC_WM8960
  148. tristate
  149. config SND_SOC_WM8961
  150. tristate
  151. config SND_SOC_WM8971
  152. tristate
  153. config SND_SOC_WM8974
  154. tristate
  155. config SND_SOC_WM8988
  156. tristate
  157. config SND_SOC_WM8990
  158. tristate
  159. config SND_SOC_WM8993
  160. tristate
  161. config SND_SOC_WM9081
  162. tristate
  163. config SND_SOC_WM9705
  164. tristate
  165. config SND_SOC_WM9712
  166. tristate
  167. config SND_SOC_WM9713
  168. tristate
  169. # Amp
  170. config SND_SOC_MAX9877
  171. tristate