xref: /linux/sound/soc/sof/Kconfig (revision 4c88519133bdd802fb0df4707b5a8c066af7154d)
17e978fa3SLiam Girdwoodconfig SND_SOC_SOF_TOPLEVEL
27e978fa3SLiam Girdwood	bool "Sound Open Firmware Support"
37e978fa3SLiam Girdwood	help
47e978fa3SLiam Girdwood	  This adds support for Sound Open Firmware (SOF). SOF is a free and
57e978fa3SLiam Girdwood	  generic open source audio DSP firmware for multiple devices.
67e978fa3SLiam Girdwood	  Say Y if you have such a device that is supported by SOF.
77e978fa3SLiam Girdwood	  If unsure select "N".
87e978fa3SLiam Girdwood
97e978fa3SLiam Girdwoodif SND_SOC_SOF_TOPLEVEL
107e978fa3SLiam Girdwood
117e978fa3SLiam Girdwoodconfig SND_SOC_SOF_PCI
127e978fa3SLiam Girdwood	tristate "SOF PCI enumeration support"
137e978fa3SLiam Girdwood	depends on PCI
147e978fa3SLiam Girdwood	select SND_SOC_SOF
157e978fa3SLiam Girdwood	select SND_SOC_ACPI if ACPI
167e978fa3SLiam Girdwood	select SND_SOC_SOF_OPTIONS
177e978fa3SLiam Girdwood	select SND_SOC_SOF_INTEL_PCI if SND_SOC_SOF_INTEL_TOPLEVEL
187e978fa3SLiam Girdwood	help
197e978fa3SLiam Girdwood	  This adds support for PCI enumeration. This option is
207e978fa3SLiam Girdwood	  required to enable Intel Skylake+ devices
217e978fa3SLiam Girdwood	  Say Y if you need this option
227e978fa3SLiam Girdwood	  If unsure select "N".
237e978fa3SLiam Girdwood
247e978fa3SLiam Girdwoodconfig SND_SOC_SOF_ACPI
257e978fa3SLiam Girdwood	tristate "SOF ACPI enumeration support"
267e978fa3SLiam Girdwood	depends on ACPI || COMPILE_TEST
277e978fa3SLiam Girdwood	select SND_SOC_SOF
287e978fa3SLiam Girdwood	select SND_SOC_ACPI if ACPI
297e978fa3SLiam Girdwood	select SND_SOC_SOF_OPTIONS
307e978fa3SLiam Girdwood	select SND_SOC_SOF_INTEL_ACPI if SND_SOC_SOF_INTEL_TOPLEVEL
31*4c885191SRandy Dunlap	select IOSF_MBI if X86 && PCI
327e978fa3SLiam Girdwood	help
337e978fa3SLiam Girdwood	  This adds support for ACPI enumeration. This option is required
347e978fa3SLiam Girdwood	  to enable Intel Haswell/Broadwell/Baytrail/Cherrytrail devices
357e978fa3SLiam Girdwood	  Say Y if you need this option
367e978fa3SLiam Girdwood	  If unsure select "N".
377e978fa3SLiam Girdwood
387e978fa3SLiam Girdwoodconfig SND_SOC_SOF_OPTIONS
397e978fa3SLiam Girdwood	tristate
407e978fa3SLiam Girdwood	help
417e978fa3SLiam Girdwood	  This option is not user-selectable but automagically handled by
427e978fa3SLiam Girdwood	  'select' statements at a higher level
437e978fa3SLiam Girdwood
447e978fa3SLiam Girdwoodif SND_SOC_SOF_OPTIONS
457e978fa3SLiam Girdwood
467e978fa3SLiam Girdwoodconfig SND_SOC_SOF_NOCODEC
477e978fa3SLiam Girdwood	tristate "SOF nocodec mode Support"
487e978fa3SLiam Girdwood	help
497e978fa3SLiam Girdwood	  This adds support for a dummy/nocodec machine driver fallback
507e978fa3SLiam Girdwood	  option if no known codec is detected. This is typically only
517e978fa3SLiam Girdwood	  enabled for developers or devices where the sound card is
527e978fa3SLiam Girdwood	  controlled externally
537e978fa3SLiam Girdwood	  Say Y if you need this nocodec fallback option
547e978fa3SLiam Girdwood	  If unsure select "N".
557e978fa3SLiam Girdwood
5673affae2SPierre-Louis Bossartconfig SND_SOC_SOF_STRICT_ABI_CHECKS
5773affae2SPierre-Louis Bossart	bool "SOF strict ABI checks"
5873affae2SPierre-Louis Bossart	help
5973affae2SPierre-Louis Bossart	  This option enables strict ABI checks for firmware and topology
6073affae2SPierre-Louis Bossart	  files.
6173affae2SPierre-Louis Bossart	  When these files are more recent than the kernel, the kernel
6273affae2SPierre-Louis Bossart	  will handle the functionality it supports and may report errors
6373affae2SPierre-Louis Bossart	  during topology creation or run-time usage if new functionality
6473affae2SPierre-Louis Bossart	  is invoked.
6573affae2SPierre-Louis Bossart	  This option will stop topology creation and firmware load upfront.
6673affae2SPierre-Louis Bossart	  It is intended for SOF CI/releases and not for users or distros.
6773affae2SPierre-Louis Bossart	  Say Y if you want strict ABI checks for an SOF release
6873affae2SPierre-Louis Bossart	  If you are not involved in SOF releases and CI development
6973affae2SPierre-Louis Bossart	  select "N".
7073affae2SPierre-Louis Bossart
717e978fa3SLiam Girdwoodconfig SND_SOC_SOF_DEBUG
727e978fa3SLiam Girdwood	bool "SOF debugging features"
737e978fa3SLiam Girdwood	help
747e978fa3SLiam Girdwood	  This option can be used to enable or disable individual SOF firmware
757e978fa3SLiam Girdwood	  and driver debugging options.
767e978fa3SLiam Girdwood	  Say Y if you are debugging SOF FW or drivers.
777e978fa3SLiam Girdwood	  If unsure select "N".
787e978fa3SLiam Girdwood
797e978fa3SLiam Girdwoodif SND_SOC_SOF_DEBUG
807e978fa3SLiam Girdwood
817e978fa3SLiam Girdwoodconfig SND_SOC_SOF_FORCE_NOCODEC_MODE
827e978fa3SLiam Girdwood	bool "SOF force nocodec Mode"
837e978fa3SLiam Girdwood	depends on SND_SOC_SOF_NOCODEC
847e978fa3SLiam Girdwood	help
857e978fa3SLiam Girdwood	  This forces SOF to use dummy/nocodec as machine driver, even
867e978fa3SLiam Girdwood	  though there is a codec detected on the real platform. This is
877e978fa3SLiam Girdwood	  typically only enabled for developers for debug purposes, before
887e978fa3SLiam Girdwood	  codec/machine driver is ready, or to exclude the impact of those
897e978fa3SLiam Girdwood	  drivers
907e978fa3SLiam Girdwood	  Say Y if you need this force nocodec mode option
917e978fa3SLiam Girdwood	  If unsure select "N".
927e978fa3SLiam Girdwood
937e978fa3SLiam Girdwoodconfig SND_SOC_SOF_DEBUG_XRUN_STOP
947e978fa3SLiam Girdwood	bool "SOF stop on XRUN"
957e978fa3SLiam Girdwood	help
967e978fa3SLiam Girdwood	  This option forces PCMs to stop on any XRUN event. This is useful to
977e978fa3SLiam Girdwood	  preserve any trace data ond pipeline status prior to the XRUN.
987e978fa3SLiam Girdwood	  Say Y if you are debugging SOF FW pipeline XRUNs.
997e978fa3SLiam Girdwood	  If unsure select "N".
1007e978fa3SLiam Girdwood
1017e978fa3SLiam Girdwoodconfig SND_SOC_SOF_DEBUG_VERBOSE_IPC
1027e978fa3SLiam Girdwood	bool "SOF verbose IPC logs"
1037e978fa3SLiam Girdwood	help
1047e978fa3SLiam Girdwood	  This option enables more verbose IPC logs, with command types in
1057e978fa3SLiam Girdwood	  human-readable form instead of just 32-bit hex dumps. This is useful
1067e978fa3SLiam Girdwood	  if you are trying to debug IPC with the DSP firmware.
1077e978fa3SLiam Girdwood	  If unsure select "N".
1087e978fa3SLiam Girdwood
1097e978fa3SLiam Girdwoodconfig SND_SOC_SOF_DEBUG_FORCE_IPC_POSITION
1107e978fa3SLiam Girdwood	bool "SOF force to use IPC for position update on SKL+"
1117e978fa3SLiam Girdwood	help
1127e978fa3SLiam Girdwood	  This option force to handle stream position update IPCs and run pcm
1137e978fa3SLiam Girdwood	  elapse to inform ALSA about that, on platforms (e.g. Intel SKL+) that
1147e978fa3SLiam Girdwood	  with other approach (e.g. HDAC DPIB/posbuf) to elapse PCM.
1157e978fa3SLiam Girdwood	  On platforms (e.g. Intel SKL-) where position update IPC is the only
1167e978fa3SLiam Girdwood	  one choice, this setting won't impact anything.
1177e978fa3SLiam Girdwood	  if you are trying to debug pointer update with position IPCs or where
1187e978fa3SLiam Girdwood	  DPIB/posbuf is not ready, select "Y".
1197e978fa3SLiam Girdwood	  If unsure select "N".
1207e978fa3SLiam Girdwood
1217e978fa3SLiam Girdwoodconfig SND_SOC_SOF_DEBUG_ENABLE_DEBUGFS_CACHE
1227e978fa3SLiam Girdwood	bool "SOF enable debugfs caching"
1237e978fa3SLiam Girdwood	help
1247e978fa3SLiam Girdwood	  This option enables caching of debugfs
1257e978fa3SLiam Girdwood	  memory -> DSP resource (memory, register, etc)
1267e978fa3SLiam Girdwood	  before the audio DSP is suspended. This will increase the suspend
1277e978fa3SLiam Girdwood	  latency and therefore should be used for debug purposes only.
1287e978fa3SLiam Girdwood	  Say Y if you want to enable caching the memory windows.
1297e978fa3SLiam Girdwood	  If unsure, select "N".
1307e978fa3SLiam Girdwood
1317e978fa3SLiam Girdwoodendif ## SND_SOC_SOF_DEBUG
1327e978fa3SLiam Girdwood
1337e978fa3SLiam Girdwoodendif ## SND_SOC_SOF_OPTIONS
1347e978fa3SLiam Girdwood
1357e978fa3SLiam Girdwoodconfig SND_SOC_SOF
1367e978fa3SLiam Girdwood	tristate
1377e978fa3SLiam Girdwood	select SND_SOC_TOPOLOGY
1387e978fa3SLiam Girdwood	help
1397e978fa3SLiam Girdwood	  This option is not user-selectable but automagically handled by
1407e978fa3SLiam Girdwood	  'select' statements at a higher level
1417e978fa3SLiam Girdwood	  The selection is made at the top level and does not exactly follow
1427e978fa3SLiam Girdwood	  module dependencies but since the module or built-in type is decided
1437e978fa3SLiam Girdwood	  at the top level it doesn't matter.
1447e978fa3SLiam Girdwood
1457e978fa3SLiam Girdwoodconfig SND_SOC_SOF_PROBE_WORK_QUEUE
1467e978fa3SLiam Girdwood	bool
1477e978fa3SLiam Girdwood	help
1487e978fa3SLiam Girdwood	  This option is not user-selectable but automagically handled by
1497e978fa3SLiam Girdwood	  'select' statements at a higher level
1507e978fa3SLiam Girdwood	  When selected, the probe is handled in two steps, for example to
1517e978fa3SLiam Girdwood	  avoid lockdeps if request_module is used in the probe.
1527e978fa3SLiam Girdwood
1537e978fa3SLiam Girdwoodsource "sound/soc/sof/intel/Kconfig"
1547e978fa3SLiam Girdwoodsource "sound/soc/sof/xtensa/Kconfig"
1557e978fa3SLiam Girdwood
1567e978fa3SLiam Girdwoodendif
157