Kconfig 9.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535
  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_88PM860X if MFD_88PM860X
  13. select SND_SOC_L3
  14. select SND_SOC_AB8500_CODEC if ABX500_CORE
  15. select SND_SOC_AC97_CODEC if SND_SOC_AC97_BUS
  16. select SND_SOC_AD1836 if SPI_MASTER
  17. select SND_SOC_AD193X if SND_SOC_I2C_AND_SPI
  18. select SND_SOC_AD1980 if SND_SOC_AC97_BUS
  19. select SND_SOC_AD73311
  20. select SND_SOC_ADAU1373 if I2C
  21. select SND_SOC_ADAV80X if SND_SOC_I2C_AND_SPI
  22. select SND_SOC_ADS117X
  23. select SND_SOC_AK4104 if SPI_MASTER
  24. select SND_SOC_AK4535 if I2C
  25. select SND_SOC_AK4641 if I2C
  26. select SND_SOC_AK4642 if I2C
  27. select SND_SOC_AK4671 if I2C
  28. select SND_SOC_AK5386
  29. select SND_SOC_ALC5623 if I2C
  30. select SND_SOC_ALC5632 if I2C
  31. select SND_SOC_CQ0093VC if MFD_DAVINCI_VOICECODEC
  32. select SND_SOC_CS42L51 if I2C
  33. select SND_SOC_CS42L52 if I2C
  34. select SND_SOC_CS42L73 if I2C
  35. select SND_SOC_CS4270 if I2C
  36. select SND_SOC_CS4271 if SND_SOC_I2C_AND_SPI
  37. select SND_SOC_CX20442 if TTY
  38. select SND_SOC_DA7210 if I2C
  39. select SND_SOC_DA7213 if I2C
  40. select SND_SOC_DA732X if I2C
  41. select SND_SOC_DA9055 if I2C
  42. select SND_SOC_BT_SCO
  43. select SND_SOC_ISABELLE if I2C
  44. select SND_SOC_JZ4740_CODEC
  45. select SND_SOC_LM4857 if I2C
  46. select SND_SOC_LM49453 if I2C
  47. select SND_SOC_MAX98088 if I2C
  48. select SND_SOC_MAX98090 if I2C
  49. select SND_SOC_MAX98095 if I2C
  50. select SND_SOC_MAX9850 if I2C
  51. select SND_SOC_MAX9768 if I2C
  52. select SND_SOC_MAX9877 if I2C
  53. select SND_SOC_MC13783 if MFD_MC13XXX
  54. select SND_SOC_ML26124 if I2C
  55. select SND_SOC_HDMI_CODEC
  56. select SND_SOC_PCM3008
  57. select SND_SOC_RT5631 if I2C
  58. select SND_SOC_RT5640 if I2C
  59. select SND_SOC_SGTL5000 if I2C
  60. select SND_SOC_SI476X if MFD_SI476X_CORE
  61. select SND_SOC_SN95031 if INTEL_SCU_IPC
  62. select SND_SOC_SPDIF
  63. select SND_SOC_SSM2518 if I2C
  64. select SND_SOC_SSM2602 if SND_SOC_I2C_AND_SPI
  65. select SND_SOC_STA32X if I2C
  66. select SND_SOC_STA529 if I2C
  67. select SND_SOC_STAC9766 if SND_SOC_AC97_BUS
  68. select SND_SOC_TAS5086 if I2C
  69. select SND_SOC_TLV320AIC23 if I2C
  70. select SND_SOC_TLV320AIC26 if SPI_MASTER
  71. select SND_SOC_TLV320AIC32X4 if I2C
  72. select SND_SOC_TLV320AIC3X if I2C
  73. select SND_SOC_TPA6130A2 if I2C
  74. select SND_SOC_TLV320DAC33 if I2C
  75. select SND_SOC_TWL4030 if TWL4030_CORE
  76. select SND_SOC_TWL6040 if TWL6040_CORE
  77. select SND_SOC_UDA134X
  78. select SND_SOC_UDA1380 if I2C
  79. select SND_SOC_WL1273 if MFD_WL1273_CORE
  80. select SND_SOC_WM0010 if SPI_MASTER
  81. select SND_SOC_WM1250_EV1 if I2C
  82. select SND_SOC_WM2000 if I2C
  83. select SND_SOC_WM2200 if I2C
  84. select SND_SOC_WM5100 if I2C
  85. select SND_SOC_WM5102 if MFD_WM5102
  86. select SND_SOC_WM5110 if MFD_WM5110
  87. select SND_SOC_WM8350 if MFD_WM8350
  88. select SND_SOC_WM8400 if MFD_WM8400
  89. select SND_SOC_WM8510 if SND_SOC_I2C_AND_SPI
  90. select SND_SOC_WM8523 if I2C
  91. select SND_SOC_WM8580 if I2C
  92. select SND_SOC_WM8711 if SND_SOC_I2C_AND_SPI
  93. select SND_SOC_WM8727
  94. select SND_SOC_WM8728 if SND_SOC_I2C_AND_SPI
  95. select SND_SOC_WM8731 if SND_SOC_I2C_AND_SPI
  96. select SND_SOC_WM8737 if SND_SOC_I2C_AND_SPI
  97. select SND_SOC_WM8741 if SND_SOC_I2C_AND_SPI
  98. select SND_SOC_WM8750 if SND_SOC_I2C_AND_SPI
  99. select SND_SOC_WM8753 if SND_SOC_I2C_AND_SPI
  100. select SND_SOC_WM8770 if SPI_MASTER
  101. select SND_SOC_WM8776 if SND_SOC_I2C_AND_SPI
  102. select SND_SOC_WM8782
  103. select SND_SOC_WM8804 if SND_SOC_I2C_AND_SPI
  104. select SND_SOC_WM8900 if I2C
  105. select SND_SOC_WM8903 if I2C && GENERIC_HARDIRQS
  106. select SND_SOC_WM8904 if I2C
  107. select SND_SOC_WM8940 if I2C
  108. select SND_SOC_WM8955 if I2C
  109. select SND_SOC_WM8960 if I2C
  110. select SND_SOC_WM8961 if I2C
  111. select SND_SOC_WM8962 if I2C
  112. select SND_SOC_WM8971 if I2C
  113. select SND_SOC_WM8974 if I2C
  114. select SND_SOC_WM8978 if I2C
  115. select SND_SOC_WM8983 if SND_SOC_I2C_AND_SPI
  116. select SND_SOC_WM8985 if SND_SOC_I2C_AND_SPI
  117. select SND_SOC_WM8988 if SND_SOC_I2C_AND_SPI
  118. select SND_SOC_WM8990 if I2C
  119. select SND_SOC_WM8991 if I2C
  120. select SND_SOC_WM8993 if I2C
  121. select SND_SOC_WM8994 if MFD_WM8994
  122. select SND_SOC_WM8995 if SND_SOC_I2C_AND_SPI
  123. select SND_SOC_WM8996 if I2C
  124. select SND_SOC_WM9081 if I2C
  125. select SND_SOC_WM9090 if I2C
  126. select SND_SOC_WM9705 if SND_SOC_AC97_BUS
  127. select SND_SOC_WM9712 if SND_SOC_AC97_BUS
  128. select SND_SOC_WM9713 if SND_SOC_AC97_BUS
  129. help
  130. Normally ASoC codec drivers are only built if a machine driver which
  131. uses them is also built since they are only usable with a machine
  132. driver. Selecting this option will allow these drivers to be built
  133. without an explicit machine driver for test and development purposes.
  134. Support for the bus types used to access the codecs to be built must
  135. be selected separately.
  136. If unsure select "N".
  137. config SND_SOC_88PM860X
  138. tristate
  139. config SND_SOC_ARIZONA
  140. tristate
  141. default y if SND_SOC_WM5102=y
  142. default y if SND_SOC_WM5110=y
  143. default m if SND_SOC_WM5102=m
  144. default m if SND_SOC_WM5110=m
  145. config SND_SOC_WM_HUBS
  146. tristate
  147. default y if SND_SOC_WM8993=y || SND_SOC_WM8994=y
  148. default m if SND_SOC_WM8993=m || SND_SOC_WM8994=m
  149. config SND_SOC_WM_ADSP
  150. tristate
  151. default y if SND_SOC_WM5102=y
  152. default y if SND_SOC_WM2200=y
  153. default m if SND_SOC_WM5102=m
  154. default m if SND_SOC_WM2200=m
  155. config SND_SOC_AB8500_CODEC
  156. tristate
  157. config SND_SOC_AC97_CODEC
  158. tristate
  159. select SND_AC97_CODEC
  160. config SND_SOC_AD1836
  161. tristate
  162. config SND_SOC_AD193X
  163. tristate
  164. config SND_SOC_AD1980
  165. tristate
  166. config SND_SOC_AD73311
  167. tristate
  168. config SND_SOC_ADAU1701
  169. select SND_SOC_SIGMADSP
  170. tristate
  171. config SND_SOC_ADAU1373
  172. tristate
  173. config SND_SOC_ADAV80X
  174. tristate
  175. config SND_SOC_ADS117X
  176. tristate
  177. config SND_SOC_AK4104
  178. tristate
  179. config SND_SOC_AK4535
  180. tristate
  181. config SND_SOC_AK4641
  182. tristate
  183. config SND_SOC_AK4642
  184. tristate
  185. config SND_SOC_AK4671
  186. tristate
  187. config SND_SOC_AK5386
  188. tristate
  189. config SND_SOC_ALC5623
  190. tristate
  191. config SND_SOC_ALC5632
  192. tristate
  193. config SND_SOC_CQ0093VC
  194. tristate
  195. config SND_SOC_CS42L51
  196. tristate
  197. config SND_SOC_CS42L52
  198. tristate
  199. config SND_SOC_CS42L73
  200. tristate
  201. # Cirrus Logic CS4270 Codec
  202. config SND_SOC_CS4270
  203. tristate
  204. # Cirrus Logic CS4270 Codec VD = 3.3V Errata
  205. # Select if you are affected by the errata where the part will not function
  206. # if MCLK divide-by-1.5 is selected and VD is set to 3.3V. The driver will
  207. # not select any sample rates that require MCLK to be divided by 1.5.
  208. config SND_SOC_CS4270_VD33_ERRATA
  209. bool
  210. depends on SND_SOC_CS4270
  211. config SND_SOC_CS4271
  212. tristate
  213. config SND_SOC_CX20442
  214. tristate
  215. depends on TTY
  216. config SND_SOC_JZ4740_CODEC
  217. select REGMAP_MMIO
  218. tristate
  219. config SND_SOC_L3
  220. tristate
  221. config SND_SOC_DA7210
  222. tristate
  223. config SND_SOC_DA7213
  224. tristate
  225. config SND_SOC_DA732X
  226. tristate
  227. config SND_SOC_DA9055
  228. tristate
  229. config SND_SOC_BT_SCO
  230. tristate
  231. config SND_SOC_DMIC
  232. tristate
  233. config SND_SOC_ISABELLE
  234. tristate
  235. config SND_SOC_LM49453
  236. tristate
  237. config SND_SOC_MAX98088
  238. tristate
  239. config SND_SOC_MAX98090
  240. tristate
  241. config SND_SOC_MAX98095
  242. tristate
  243. config SND_SOC_MAX9850
  244. tristate
  245. config SND_SOC_HDMI_CODEC
  246. tristate
  247. config SND_SOC_PCM3008
  248. tristate
  249. config SND_SOC_RT5631
  250. tristate
  251. config SND_SOC_RT5640
  252. tristate
  253. #Freescale sgtl5000 codec
  254. config SND_SOC_SGTL5000
  255. tristate
  256. config SND_SOC_SI476X
  257. tristate
  258. config SND_SOC_SIGMADSP
  259. tristate
  260. select CRC32
  261. config SND_SOC_SN95031
  262. tristate
  263. config SND_SOC_SPDIF
  264. tristate
  265. config SND_SOC_SSM2518
  266. tristate
  267. config SND_SOC_SSM2602
  268. tristate
  269. config SND_SOC_STA32X
  270. tristate
  271. config SND_SOC_STA529
  272. tristate
  273. config SND_SOC_STAC9766
  274. tristate
  275. config SND_SOC_TAS5086
  276. tristate
  277. config SND_SOC_TLV320AIC23
  278. tristate
  279. config SND_SOC_TLV320AIC26
  280. tristate
  281. depends on SPI
  282. config SND_SOC_TLV320AIC32X4
  283. tristate
  284. config SND_SOC_TLV320AIC3X
  285. tristate
  286. config SND_SOC_TLV320DAC33
  287. tristate
  288. config SND_SOC_TWL4030
  289. select MFD_TWL4030_AUDIO
  290. tristate
  291. config SND_SOC_TWL6040
  292. tristate
  293. config SND_SOC_UDA134X
  294. tristate
  295. config SND_SOC_UDA1380
  296. tristate
  297. config SND_SOC_WL1273
  298. tristate
  299. config SND_SOC_WM0010
  300. tristate
  301. config SND_SOC_WM1250_EV1
  302. tristate
  303. config SND_SOC_WM2000
  304. tristate
  305. config SND_SOC_WM2200
  306. tristate
  307. config SND_SOC_WM5100
  308. tristate
  309. config SND_SOC_WM5102
  310. tristate
  311. config SND_SOC_WM5110
  312. tristate
  313. config SND_SOC_WM8350
  314. tristate
  315. config SND_SOC_WM8400
  316. tristate
  317. config SND_SOC_WM8510
  318. tristate
  319. config SND_SOC_WM8523
  320. tristate
  321. config SND_SOC_WM8580
  322. tristate
  323. config SND_SOC_WM8711
  324. tristate
  325. config SND_SOC_WM8727
  326. tristate
  327. config SND_SOC_WM8728
  328. tristate
  329. config SND_SOC_WM8731
  330. tristate
  331. config SND_SOC_WM8737
  332. tristate
  333. config SND_SOC_WM8741
  334. tristate
  335. config SND_SOC_WM8750
  336. tristate
  337. config SND_SOC_WM8753
  338. tristate
  339. config SND_SOC_WM8770
  340. tristate
  341. config SND_SOC_WM8776
  342. tristate
  343. config SND_SOC_WM8782
  344. tristate
  345. config SND_SOC_WM8804
  346. tristate
  347. config SND_SOC_WM8900
  348. tristate
  349. config SND_SOC_WM8903
  350. tristate
  351. config SND_SOC_WM8904
  352. tristate
  353. config SND_SOC_WM8940
  354. tristate
  355. config SND_SOC_WM8955
  356. tristate
  357. config SND_SOC_WM8960
  358. tristate
  359. config SND_SOC_WM8961
  360. tristate
  361. config SND_SOC_WM8962
  362. tristate
  363. config SND_SOC_WM8971
  364. tristate
  365. config SND_SOC_WM8974
  366. tristate
  367. config SND_SOC_WM8978
  368. tristate
  369. config SND_SOC_WM8983
  370. tristate
  371. config SND_SOC_WM8985
  372. tristate
  373. config SND_SOC_WM8988
  374. tristate
  375. config SND_SOC_WM8990
  376. tristate
  377. config SND_SOC_WM8991
  378. tristate
  379. config SND_SOC_WM8993
  380. tristate
  381. config SND_SOC_WM8994
  382. tristate
  383. config SND_SOC_WM8995
  384. tristate
  385. config SND_SOC_WM8996
  386. tristate
  387. config SND_SOC_WM9081
  388. tristate
  389. config SND_SOC_WM9090
  390. tristate
  391. config SND_SOC_WM9705
  392. tristate
  393. config SND_SOC_WM9712
  394. tristate
  395. config SND_SOC_WM9713
  396. tristate
  397. # Amp
  398. config SND_SOC_LM4857
  399. tristate
  400. config SND_SOC_MAX9768
  401. tristate
  402. config SND_SOC_MAX9877
  403. tristate
  404. config SND_SOC_MC13783
  405. tristate
  406. config SND_SOC_ML26124
  407. tristate
  408. config SND_SOC_TPA6130A2
  409. tristate