0001 # SPDX-License-Identifier: GPL-2.0-only
0002 config SND_SOC_SOF_INTEL_TOPLEVEL
0003 bool "SOF support for Intel audio DSPs"
0004 depends on X86 || COMPILE_TEST
0005 help
0006 This adds support for Sound Open Firmware for Intel(R) platforms.
0007 Say Y if you have such a device.
0008 If unsure select "N".
0009
0010 if SND_SOC_SOF_INTEL_TOPLEVEL
0011
0012 config SND_SOC_SOF_INTEL_HIFI_EP_IPC
0013 tristate
0014 help
0015 This option is not user-selectable but automagically handled by
0016 'select' statements at a higher level.
0017
0018 config SND_SOC_SOF_INTEL_ATOM_HIFI_EP
0019 tristate
0020 select SND_SOC_SOF_INTEL_COMMON
0021 select SND_SOC_SOF_INTEL_HIFI_EP_IPC
0022 help
0023 This option is not user-selectable but automagically handled by
0024 'select' statements at a higher level.
0025
0026 config SND_SOC_SOF_INTEL_COMMON
0027 tristate
0028 select SND_SOC_SOF
0029 select SND_SOC_ACPI_INTEL_MATCH
0030 select SND_SOC_SOF_XTENSA
0031 select SND_SOC_INTEL_MACH
0032 select SND_SOC_ACPI if ACPI
0033 select SND_INTEL_DSP_CONFIG
0034 help
0035 This option is not user-selectable but automagically handled by
0036 'select' statements at a higher level.
0037
0038 if SND_SOC_SOF_ACPI
0039
0040 config SND_SOC_SOF_BAYTRAIL
0041 tristate "SOF support for Baytrail, Braswell and Cherrytrail"
0042 default SND_SOC_SOF_ACPI
0043 select SND_SOC_SOF_IPC3
0044 select SND_SOC_SOF_INTEL_COMMON
0045 select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
0046 select SND_SOC_SOF_ACPI_DEV
0047 select IOSF_MBI if X86 && PCI
0048 help
0049 This adds support for Sound Open Firmware for Intel(R) platforms
0050 using the Baytrail, Braswell or Cherrytrail processors.
0051 This option can coexist in the same build with the Atom legacy
0052 drivers, currently the default but which will be deprecated
0053 at some point.
0054 Existing firmware/topology binaries and UCM configurations
0055 typically located in the root file system are already
0056 compatible with both SOF or Atom/SST legacy drivers.
0057 This is a recommended option for distributions.
0058 Say Y if you want to enable SOF on Baytrail/Cherrytrail.
0059 If unsure select "N".
0060
0061 config SND_SOC_SOF_BROADWELL
0062 tristate "SOF support for Broadwell"
0063 default SND_SOC_SOF_ACPI
0064 select SND_SOC_SOF_IPC3
0065 select SND_SOC_SOF_INTEL_COMMON
0066 select SND_SOC_SOF_INTEL_HIFI_EP_IPC
0067 select SND_SOC_SOF_ACPI_DEV
0068 help
0069 This adds support for Sound Open Firmware for Intel(R) platforms
0070 using the Broadwell processors.
0071 This option can coexist in the same build with the default 'catpt'
0072 driver.
0073 Existing firmware/topology binaries and UCM configurations typically
0074 located in the root file system are already compatible with both SOF
0075 or catpt drivers.
0076 SOF does not fully support Broadwell and has limitations related to
0077 DMA and suspend-resume, this is not a recommended option for
0078 distributions.
0079 Say Y if you want to enable SOF on Broadwell.
0080 If unsure select "N".
0081
0082 endif ## SND_SOC_SOF_ACPI
0083
0084 if SND_SOC_SOF_PCI
0085
0086 config SND_SOC_SOF_MERRIFIELD
0087 tristate "SOF support for Tangier/Merrifield"
0088 default SND_SOC_SOF_PCI
0089 select SND_SOC_SOF_PCI_DEV
0090 select SND_SOC_SOF_IPC3
0091 select SND_SOC_SOF_INTEL_ATOM_HIFI_EP
0092 help
0093 This adds support for Sound Open Firmware for Intel(R) platforms
0094 using the Tangier/Merrifield processors.
0095 Say Y if you have such a device.
0096 If unsure select "N".
0097
0098 config SND_SOC_SOF_INTEL_APL
0099 tristate
0100 select SND_SOC_SOF_HDA_COMMON
0101 select SND_SOC_SOF_IPC3
0102 select SND_SOC_SOF_INTEL_IPC4
0103
0104 config SND_SOC_SOF_APOLLOLAKE
0105 tristate "SOF support for Apollolake"
0106 default SND_SOC_SOF_PCI
0107 select SND_SOC_SOF_INTEL_APL
0108 help
0109 This adds support for Sound Open Firmware for Intel(R) platforms
0110 using the Apollolake processors.
0111 Say Y if you have such a device.
0112 If unsure select "N".
0113
0114 config SND_SOC_SOF_GEMINILAKE
0115 tristate "SOF support for GeminiLake"
0116 default SND_SOC_SOF_PCI
0117 select SND_SOC_SOF_INTEL_APL
0118 help
0119 This adds support for Sound Open Firmware for Intel(R) platforms
0120 using the Geminilake processors.
0121 Say Y if you have such a device.
0122 If unsure select "N".
0123
0124 config SND_SOC_SOF_INTEL_CNL
0125 tristate
0126 select SND_SOC_SOF_HDA_COMMON
0127 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
0128 select SND_SOC_SOF_IPC3
0129 select SND_SOC_SOF_INTEL_IPC4
0130
0131 config SND_SOC_SOF_CANNONLAKE
0132 tristate "SOF support for Cannonlake"
0133 default SND_SOC_SOF_PCI
0134 select SND_SOC_SOF_INTEL_CNL
0135 help
0136 This adds support for Sound Open Firmware for Intel(R) platforms
0137 using the Cannonlake processors.
0138 Say Y if you have such a device.
0139 If unsure select "N".
0140
0141 config SND_SOC_SOF_COFFEELAKE
0142 tristate "SOF support for CoffeeLake"
0143 default SND_SOC_SOF_PCI
0144 select SND_SOC_SOF_INTEL_CNL
0145 help
0146 This adds support for Sound Open Firmware for Intel(R) platforms
0147 using the Coffeelake processors.
0148 Say Y if you have such a device.
0149 If unsure select "N".
0150
0151 config SND_SOC_SOF_COMETLAKE
0152 tristate "SOF support for CometLake"
0153 default SND_SOC_SOF_PCI
0154 select SND_SOC_SOF_INTEL_CNL
0155 help
0156 This adds support for Sound Open Firmware for Intel(R) platforms
0157 using the Cometlake processors.
0158 If unsure select "N".
0159
0160 config SND_SOC_SOF_INTEL_ICL
0161 tristate
0162 select SND_SOC_SOF_HDA_COMMON
0163 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
0164 select SND_SOC_SOF_IPC3
0165 select SND_SOC_SOF_INTEL_IPC4
0166
0167 config SND_SOC_SOF_ICELAKE
0168 tristate "SOF support for Icelake"
0169 default SND_SOC_SOF_PCI
0170 select SND_SOC_SOF_INTEL_ICL
0171 help
0172 This adds support for Sound Open Firmware for Intel(R) platforms
0173 using the Icelake processors.
0174 Say Y if you have such a device.
0175 If unsure select "N".
0176
0177 config SND_SOC_SOF_JASPERLAKE
0178 tristate "SOF support for JasperLake"
0179 default SND_SOC_SOF_PCI
0180 select SND_SOC_SOF_INTEL_ICL
0181 help
0182 This adds support for Sound Open Firmware for Intel(R) platforms
0183 using the JasperLake processors.
0184 Say Y if you have such a device.
0185 If unsure select "N".
0186
0187 config SND_SOC_SOF_INTEL_TGL
0188 tristate
0189 select SND_SOC_SOF_HDA_COMMON
0190 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
0191 select SND_SOC_SOF_IPC3
0192 select SND_SOC_SOF_INTEL_IPC4
0193
0194 config SND_SOC_SOF_TIGERLAKE
0195 tristate "SOF support for Tigerlake"
0196 default SND_SOC_SOF_PCI
0197 select SND_SOC_SOF_INTEL_TGL
0198 help
0199 This adds support for Sound Open Firmware for Intel(R) platforms
0200 using the Tigerlake processors.
0201 Say Y if you have such a device.
0202 If unsure select "N".
0203
0204 config SND_SOC_SOF_ELKHARTLAKE
0205 tristate "SOF support for ElkhartLake"
0206 default SND_SOC_SOF_PCI
0207 select SND_SOC_SOF_INTEL_TGL
0208 help
0209 This adds support for Sound Open Firmware for Intel(R) platforms
0210 using the ElkhartLake processors.
0211 Say Y if you have such a device.
0212 If unsure select "N".
0213
0214 config SND_SOC_SOF_ALDERLAKE
0215 tristate "SOF support for Alderlake"
0216 default SND_SOC_SOF_PCI
0217 select SND_SOC_SOF_INTEL_TGL
0218 help
0219 This adds support for Sound Open Firmware for Intel(R) platforms
0220 using the Alderlake processors.
0221 Say Y if you have such a device.
0222 If unsure select "N".
0223
0224 config SND_SOC_SOF_INTEL_MTL
0225 tristate
0226 select SND_SOC_SOF_HDA_COMMON
0227 select SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
0228 select SND_SOC_SOF_INTEL_IPC4
0229
0230 config SND_SOC_SOF_METEORLAKE
0231 tristate "SOF support for Meteorlake"
0232 default SND_SOC_SOF_PCI
0233 select SND_SOC_SOF_INTEL_MTL
0234 help
0235 This adds support for Sound Open Firmware for Intel(R) platforms
0236 using the Meteorlake processors.
0237 Say Y if you have such a device.
0238 If unsure select "N".
0239
0240 config SND_SOC_SOF_HDA_COMMON
0241 tristate
0242 select SND_SOC_SOF_INTEL_COMMON
0243 select SND_SOC_SOF_PCI_DEV
0244 select SND_INTEL_DSP_CONFIG
0245 select SND_SOC_SOF_HDA_LINK_BASELINE
0246 select SND_SOC_SOF_HDA_PROBES
0247 help
0248 This option is not user-selectable but automagically handled by
0249 'select' statements at a higher level.
0250
0251 if SND_SOC_SOF_HDA_COMMON
0252
0253 config SND_SOC_SOF_HDA_LINK
0254 bool "SOF support for HDA Links(HDA/HDMI)"
0255 depends on SND_SOC_SOF_NOCODEC=n
0256 select SND_SOC_SOF_PROBE_WORK_QUEUE
0257 help
0258 This adds support for HDA links(HDA/HDMI) with Sound Open Firmware
0259 for Intel(R) platforms.
0260 Say Y if you want to enable HDA links with SOF.
0261 If unsure select "N".
0262
0263 config SND_SOC_SOF_HDA_AUDIO_CODEC
0264 bool "SOF support for HDAudio codecs"
0265 depends on SND_SOC_SOF_HDA_LINK
0266 help
0267 This adds support for HDAudio codecs with Sound Open Firmware
0268 for Intel(R) platforms.
0269 Say Y if you want to enable HDAudio codecs with SOF.
0270 If unsure select "N".
0271
0272 endif ## SND_SOC_SOF_HDA_COMMON
0273
0274 config SND_SOC_SOF_HDA_LINK_BASELINE
0275 tristate
0276 select SND_SOC_SOF_HDA if SND_SOC_SOF_HDA_LINK
0277 help
0278 This option is not user-selectable but automagically handled by
0279 'select' statements at a higher level.
0280
0281 config SND_SOC_SOF_HDA
0282 tristate
0283 select SND_HDA_EXT_CORE if SND_SOC_SOF_HDA_LINK
0284 select SND_SOC_HDAC_HDA if SND_SOC_SOF_HDA_AUDIO_CODEC
0285 help
0286 This option is not user-selectable but automagically handled by
0287 'select' statements at a higher level.
0288
0289 config SND_SOC_SOF_HDA_PROBES
0290 tristate
0291 select SND_SOC_SOF_DEBUG_PROBES
0292 help
0293 The option enables the data probing for Intel(R) Skylake and newer
0294 (HDA) platforms.
0295 This option is not user-selectable but automagically handled by
0296 'select' statements at a higher level.
0297
0298 config SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
0299 tristate
0300 select SOUNDWIRE_INTEL if SND_SOC_SOF_INTEL_SOUNDWIRE
0301 select SND_INTEL_SOUNDWIRE_ACPI if SND_SOC_SOF_INTEL_SOUNDWIRE
0302
0303 config SND_SOC_SOF_INTEL_SOUNDWIRE
0304 tristate "SOF support for SoundWire"
0305 default SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
0306 depends on SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE
0307 depends on ACPI && SOUNDWIRE
0308 depends on !(SOUNDWIRE=m && SND_SOC_SOF_INTEL_SOUNDWIRE_LINK_BASELINE=y)
0309 help
0310 This adds support for SoundWire with Sound Open Firmware
0311 for Intel(R) platforms.
0312 Say Y if you want to enable SoundWire links with SOF.
0313 If unsure select "N".
0314
0315 endif ## SND_SOC_SOF_PCI
0316
0317 endif ## SND_SOC_SOF_INTEL_TOPLEVEL