Kconfig 11 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. config SND_SOC_SOF_INTEL_TOPLEVEL
  3. bool "SOF support for Intel audio DSPs"
  4. depends on X86 || COMPILE_TEST
  5. help
  6. This adds support for Sound Open Firmware for Intel(R) platforms.
  7. Say Y if you have such a device.
  8. If unsure select "N".
  9. if SND_SOC_SOF_INTEL_TOPLEVEL
  10. config SND_SOC_SOF_INTEL_HIFI_EP_IPC
  11. tristate
  12. help
  13. This option is not user-selectable but automagically handled by
  14. 'select' statements at a higher level.
  15. config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
  16. tristate
  17. select SND_SOC_SOF_INTEL_COMMON
  18. select SND_SOC_SOF_INTEL_HIFI_EP_IPC
  19. help
  20. This option is not user-selectable but automagically handled by
  21. 'select' statements at a higher level.
  22. config SND_SOC_SOF_INTEL_COMMON
  23. tristate
  24. select SND_SOC_SOF
  25. select SND_SOC_ACPI_INTEL_MATCH
  26. select SND_SOC_SOF_XTENSA
  27. select SND_SOC_INTEL_MACH
  28. select SND_SOC_ACPI if ACPI
  29. select SND_INTEL_DSP_CONFIG
  30. help
  31. This option is not user-selectable but automagically handled by
  32. 'select' statements at a higher level.
  33. if SND_SOC_SOF_ACPI
  34. config SND_SOC_SOF_BAYTRAIL
  35. tristate "SOF support for Baytrail, Braswell and Cherrytrail"
  36. default SND_SOC_SOF_ACPI
  37. select SND_SOC_SOF_IPC3
  38. select SND_SOC_SOF_INTEL_COMMON
  39. select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
  40. select SND_SOC_SOF_ACPI_DEV
  41. select IOSF_MBI if X86 && PCI
  42. help
  43. This adds support for Sound Open Firmware for Intel(R) platforms
  44. using the Baytrail, Braswell or Cherrytrail processors.
  45. This option can coexist in the same build with the Atom legacy
  46. drivers, currently the default but which will be deprecated
  47. at some point.
  48. Existing firmware/topology binaries and UCM configurations
  49. typically located in the root file system are already
  50. compatible with both SOF or Atom/SST legacy drivers.
  51. This is a recommended option for distributions.
  52. Say Y if you want to enable SOF on Baytrail/Cherrytrail.
  53. If unsure select "N".
  54. config SND_SOC_SOF_BROADWELL
  55. tristate "SOF support for Broadwell"
  56. default SND_SOC_SOF_ACPI
  57. select SND_SOC_SOF_IPC3
  58. select SND_SOC_SOF_INTEL_COMMON
  59. select SND_SOC_SOF_INTEL_HIFI_EP_IPC
  60. select SND_SOC_SOF_ACPI_DEV
  61. help
  62. This adds support for Sound Open Firmware for Intel(R) platforms
  63. using the Broadwell processors.
  64. This option can coexist in the same build with the default 'catpt'
  65. driver.
  66. Existing firmware/topology binaries and UCM configurations typically
  67. located in the root file system are already compatible with both SOF
  68. or catpt drivers.
  69. SOF does not fully support Broadwell and has limitations related to
  70. DMA and suspend-resume, this is not a recommended option for
  71. distributions.
  72. Say Y if you want to enable SOF on Broadwell.
  73. If unsure select "N".
  74. endif ## SND_SOC_SOF_ACPI
  75. if SND_SOC_SOF_PCI
  76. config SND_SOC_SOF_MERRIFIELD
  77. tristate "SOF support for Tangier/Merrifield"
  78. default SND_SOC_SOF_PCI
  79. select SND_SOC_SOF_PCI_DEV
  80. select SND_SOC_SOF_IPC3
  81. select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
  82. help
  83. This adds support for Sound Open Firmware for Intel(R) platforms
  84. using the Tangier/Merrifield processors.
  85. Say Y if you have such a device.
  86. If unsure select "N".
  87. config SND_SOC_SOF_INTEL_SKL
  88. tristate
  89. select SND_SOC_SOF_HDA_GENERIC
  90. select SND_SOC_SOF_IPC4
  91. config SND_SOC_SOF_SKYLAKE
  92. tristate "SOF support for SkyLake"
  93. default SND_SOC_SOF_PCI
  94. select SND_SOC_SOF_INTEL_SKL
  95. help
  96. This adds support for the Intel(R) platforms using the SkyLake processors.
  97. Say Y if you have such a device.
  98. If unsure select "N".
  99. This is intended only for developers and not a recommend option for distros.
  100. config SND_SOC_SOF_KABYLAKE
  101. tristate "SOF support for KabyLake"
  102. default SND_SOC_SOF_PCI
  103. select SND_SOC_SOF_INTEL_SKL
  104. help
  105. This adds support for the Intel(R) platforms using the KabyLake processors.
  106. Say Y if you have such a device.
  107. If unsure select "N".
  108. This is intended only for developers and not a recommend option for distros.
  109. config SND_SOC_SOF_INTEL_APL
  110. tristate
  111. select SND_SOC_SOF_HDA_GENERIC
  112. select SND_SOC_SOF_IPC3
  113. select SND_SOC_SOF_IPC4
  114. config SND_SOC_SOF_APOLLOLAKE
  115. tristate "SOF support for Apollolake"
  116. default SND_SOC_SOF_PCI
  117. select SND_SOC_SOF_INTEL_APL
  118. help
  119. This adds support for Sound Open Firmware for Intel(R) platforms
  120. using the Apollolake processors.
  121. Say Y if you have such a device.
  122. If unsure select "N".
  123. config SND_SOC_SOF_GEMINILAKE
  124. tristate "SOF support for GeminiLake"
  125. default SND_SOC_SOF_PCI
  126. select SND_SOC_SOF_INTEL_APL
  127. help
  128. This adds support for Sound Open Firmware for Intel(R) platforms
  129. using the Geminilake processors.
  130. Say Y if you have such a device.
  131. If unsure select "N".
  132. config SND_SOC_SOF_INTEL_CNL
  133. tristate
  134. select SND_SOC_SOF_HDA_GENERIC
  135. select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  136. select SND_SOC_SOF_IPC3
  137. select SND_SOC_SOF_IPC4
  138. config SND_SOC_SOF_CANNONLAKE
  139. tristate "SOF support for Cannonlake"
  140. default SND_SOC_SOF_PCI
  141. select SND_SOC_SOF_INTEL_CNL
  142. help
  143. This adds support for Sound Open Firmware for Intel(R) platforms
  144. using the Cannonlake processors.
  145. Say Y if you have such a device.
  146. If unsure select "N".
  147. config SND_SOC_SOF_COFFEELAKE
  148. tristate "SOF support for CoffeeLake"
  149. default SND_SOC_SOF_PCI
  150. select SND_SOC_SOF_INTEL_CNL
  151. help
  152. This adds support for Sound Open Firmware for Intel(R) platforms
  153. using the Coffeelake processors.
  154. Say Y if you have such a device.
  155. If unsure select "N".
  156. config SND_SOC_SOF_COMETLAKE
  157. tristate "SOF support for CometLake"
  158. default SND_SOC_SOF_PCI
  159. select SND_SOC_SOF_INTEL_CNL
  160. help
  161. This adds support for Sound Open Firmware for Intel(R) platforms
  162. using the Cometlake processors.
  163. If unsure select "N".
  164. config SND_SOC_SOF_INTEL_ICL
  165. tristate
  166. select SND_SOC_SOF_HDA_GENERIC
  167. select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  168. select SND_SOC_SOF_IPC3
  169. select SND_SOC_SOF_IPC4
  170. select SND_SOC_SOF_INTEL_CNL
  171. config SND_SOC_SOF_ICELAKE
  172. tristate "SOF support for Icelake"
  173. default SND_SOC_SOF_PCI
  174. select SND_SOC_SOF_INTEL_ICL
  175. help
  176. This adds support for Sound Open Firmware for Intel(R) platforms
  177. using the Icelake processors.
  178. Say Y if you have such a device.
  179. If unsure select "N".
  180. config SND_SOC_SOF_JASPERLAKE
  181. tristate "SOF support for JasperLake"
  182. default SND_SOC_SOF_PCI
  183. select SND_SOC_SOF_INTEL_ICL
  184. help
  185. This adds support for Sound Open Firmware for Intel(R) platforms
  186. using the JasperLake processors.
  187. Say Y if you have such a device.
  188. If unsure select "N".
  189. config SND_SOC_SOF_INTEL_TGL
  190. tristate
  191. select SND_SOC_SOF_HDA_GENERIC
  192. select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  193. select SND_SOC_SOF_IPC3
  194. select SND_SOC_SOF_IPC4
  195. select SND_SOC_SOF_INTEL_CNL
  196. config SND_SOC_SOF_TIGERLAKE
  197. tristate "SOF support for Tigerlake"
  198. default SND_SOC_SOF_PCI
  199. select SND_SOC_SOF_INTEL_TGL
  200. help
  201. This adds support for Sound Open Firmware for Intel(R) platforms
  202. using the Tigerlake processors.
  203. Say Y if you have such a device.
  204. If unsure select "N".
  205. config SND_SOC_SOF_ELKHARTLAKE
  206. tristate "SOF support for ElkhartLake"
  207. default SND_SOC_SOF_PCI
  208. select SND_SOC_SOF_INTEL_TGL
  209. help
  210. This adds support for Sound Open Firmware for Intel(R) platforms
  211. using the ElkhartLake processors.
  212. Say Y if you have such a device.
  213. If unsure select "N".
  214. config SND_SOC_SOF_ALDERLAKE
  215. tristate "SOF support for Alderlake"
  216. default SND_SOC_SOF_PCI
  217. select SND_SOC_SOF_INTEL_TGL
  218. help
  219. This adds support for Sound Open Firmware for Intel(R) platforms
  220. using the Alderlake processors.
  221. Say Y if you have such a device.
  222. If unsure select "N".
  223. config SND_SOC_SOF_INTEL_MTL
  224. tristate
  225. select SND_SOC_SOF_HDA_GENERIC
  226. select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  227. select SND_SOC_SOF_IPC4
  228. config SND_SOC_SOF_METEORLAKE
  229. tristate "SOF support for Meteorlake"
  230. default SND_SOC_SOF_PCI
  231. select SND_SOC_SOF_INTEL_MTL
  232. help
  233. This adds support for Sound Open Firmware for Intel(R) platforms
  234. using the Meteorlake processors.
  235. Say Y if you have such a device.
  236. If unsure select "N".
  237. config SND_SOC_SOF_INTEL_LNL
  238. tristate
  239. select SND_SOC_SOF_HDA_GENERIC
  240. select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  241. select SND_SOC_SOF_IPC4
  242. select SND_SOC_SOF_INTEL_MTL
  243. config SND_SOC_SOF_LUNARLAKE
  244. tristate "SOF support for Lunarlake"
  245. default SND_SOC_SOF_PCI
  246. select SND_SOC_SOF_INTEL_LNL
  247. help
  248. This adds support for Sound Open Firmware for Intel(R) platforms
  249. using the Lunarlake processors.
  250. Say Y if you have such a device.
  251. If unsure select "N".
  252. config SND_SOC_SOF_INTEL_PTL
  253. tristate
  254. select SND_SOC_SOF_HDA_COMMON
  255. select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  256. select SND_SOC_SOF_IPC4
  257. select SND_SOC_SOF_INTEL_LNL
  258. config SND_SOC_SOF_PANTHERLAKE
  259. tristate "SOF support for Pantherlake"
  260. default SND_SOC_SOF_PCI
  261. select SND_SOC_SOF_INTEL_PTL
  262. help
  263. This adds support for Sound Open Firmware for Intel(R) platforms
  264. using the Pantherlake processors.
  265. Say Y if you have such a device.
  266. If unsure select "N".
  267. config SND_SOC_SOF_HDA_COMMON
  268. tristate
  269. config SND_SOC_SOF_HDA_GENERIC
  270. tristate
  271. select SND_SOC_SOF_HDA_COMMON
  272. select SND_SOC_SOF_INTEL_COMMON
  273. select SND_SOC_SOF_PCI_DEV
  274. select SND_INTEL_DSP_CONFIG
  275. select SND_SOC_SOF_HDA_LINK_BASELINE
  276. select SND_SOC_SOF_HDA_PROBES
  277. select SND_SOC_SOF_HDA_MLINK if SND_SOC_SOF_HDA_LINK
  278. help
  279. This option is not user-selectable but automagically handled by
  280. 'select' statements at a higher level.
  281. config SND_SOC_SOF_HDA_MLINK
  282. tristate
  283. help
  284. This option is not user-selectable but automagically handled by
  285. 'select' statements at a higher level.
  286. if SND_SOC_SOF_HDA_GENERIC
  287. config SND_SOC_SOF_HDA_LINK
  288. bool "SOF support for HDA Links(HDA/HDMI)"
  289. help
  290. This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
  291. for Intel(R) platforms.
  292. Say Y if you want to enable HDA links with SOF.
  293. If unsure select "N".
  294. config SND_SOC_SOF_HDA_AUDIO_CODEC
  295. bool "SOF support for HDAudio codecs"
  296. depends on SND_SOC_SOF_HDA_LINK
  297. select SND_SOC_SOF_PROBE_WORK_QUEUE
  298. help
  299. This adds support for HDAudio codecs with Sound Open Firmware
  300. for Intel(R) platforms.
  301. Say Y if you want to enable HDAudio codecs with SOF.
  302. If unsure select "N".
  303. endif ## SND_SOC_SOF_HDA_GENERIC
  304. config SND_SOC_SOF_HDA_LINK_BASELINE
  305. tristate
  306. select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
  307. help
  308. This option is not user-selectable but automagically handled by
  309. 'select' statements at a higher level.
  310. config SND_SOC_SOF_HDA
  311. tristate
  312. select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
  313. select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
  314. help
  315. This option is not user-selectable but automagically handled by
  316. 'select' statements at a higher level.
  317. config SND_SOC_SOF_HDA_PROBES
  318. tristate
  319. select SND_SOC_SOF_DEBUG_PROBES
  320. help
  321. The option enables the data probing for Intel(R) Skylake and newer
  322. (HDA) platforms.
  323. This option is not user-selectable but automagically handled by
  324. 'select' statements at a higher level.
  325. config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  326. tristate
  327. select SOUNDWIRE_INTEL if SND_SOC_SOF_INTEL_SOUNDWIRE != n
  328. select SND_INTEL_SOUNDWIRE_ACPI if SND_SOC_SOF_INTEL_SOUNDWIRE != n
  329. config SND_SOC_SOF_INTEL_SOUNDWIRE
  330. tristate "SOF support for SoundWire"
  331. default SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  332. depends on SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
  333. depends on ACPI && SOUNDWIRE
  334. depends on !(SOUNDWIRE=m && SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE=y)
  335. help
  336. This adds support for SoundWire with Sound Open Firmware
  337. for Intel(R) platforms.
  338. Say Y if you want to enable SoundWire links with SOF.
  339. If unsure select "N".
  340. endif ## SND_SOC_SOF_PCI
  341. endif ## SND_SOC_SOF_INTEL_TOPLEVEL