forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
215 lines
7.4 KiB
215 lines
7.4 KiB
# SPDX-License-Identifier: GPL-2.0-only |
|
config SND_SOC_SOF_TOPLEVEL |
|
bool "Sound Open Firmware Support" |
|
help |
|
This adds support for Sound Open Firmware (SOF). SOF is free and |
|
generic open source audio DSP firmware for multiple devices. |
|
Say Y if you have such a device that is supported by SOF. |
|
If unsure select "N". |
|
|
|
if SND_SOC_SOF_TOPLEVEL |
|
|
|
config SND_SOC_SOF_PCI_DEV |
|
tristate |
|
|
|
config SND_SOC_SOF_PCI |
|
tristate "SOF PCI enumeration support" |
|
depends on PCI |
|
help |
|
This adds support for PCI enumeration. This option is |
|
required to enable Intel Skylake+ devices. |
|
For backwards-compatibility with previous configurations the selection will |
|
be used as default for platform-specific drivers. |
|
Say Y if you need this option. |
|
If unsure select "N". |
|
|
|
config SND_SOC_SOF_ACPI |
|
tristate "SOF ACPI enumeration support" |
|
depends on ACPI || COMPILE_TEST |
|
help |
|
This adds support for ACPI enumeration. This option is required |
|
to enable Intel Broadwell/Baytrail/Cherrytrail devices. |
|
For backwards-compatibility with previous configurations the selection will |
|
be used as default for platform-specific drivers. |
|
Say Y if you need this option. |
|
If unsure select "N". |
|
|
|
config SND_SOC_SOF_ACPI_DEV |
|
tristate |
|
|
|
config SND_SOC_SOF_OF |
|
tristate "SOF OF enumeration support" |
|
depends on OF || COMPILE_TEST |
|
select SND_SOC_SOF |
|
help |
|
This adds support for Device Tree enumeration. This option is |
|
required to enable i.MX8 devices. |
|
Say Y if you need this option. If unsure select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_PROBES |
|
bool "SOF enable data probing" |
|
select SND_SOC_COMPRESS |
|
help |
|
This option enables the data probing feature that can be used to |
|
gather data directly from specific points of the audio pipeline. |
|
Say Y if you want to enable probes. |
|
If unsure, select "N". |
|
|
|
config SND_SOC_SOF_DEVELOPER_SUPPORT |
|
bool "SOF developer options support" |
|
depends on EXPERT |
|
help |
|
This option unlocks SOF developer options for debug/performance/ |
|
code hardening. |
|
Distributions should not select this option, only SOF development |
|
teams should select it. |
|
Say Y if you are involved in SOF development and need this option. |
|
If not, select N. |
|
|
|
if SND_SOC_SOF_DEVELOPER_SUPPORT |
|
|
|
config SND_SOC_SOF_NOCODEC |
|
tristate |
|
|
|
config SND_SOC_SOF_NOCODEC_SUPPORT |
|
bool "SOF nocodec mode support" |
|
help |
|
This adds support for a dummy/nocodec machine driver fallback |
|
option if no known codec is detected. This is typically only |
|
enabled for developers or devices where the sound card is |
|
controlled externally. |
|
This option is mutually exclusive with the Intel HDAudio support. |
|
Selecting it may have negative impacts and prevent e.g. microphone |
|
functionality from being enabled on Intel CoffeeLake and later |
|
platforms. |
|
Distributions should not select this option! |
|
Say Y if you need this nocodec fallback option. |
|
If unsure select "N". |
|
|
|
config SND_SOC_SOF_STRICT_ABI_CHECKS |
|
bool "SOF strict ABI checks" |
|
help |
|
This option enables strict ABI checks for firmware and topology |
|
files. |
|
When these files are more recent than the kernel, the kernel |
|
will handle the functionality it supports and may report errors |
|
during topology creation or run-time usage if new functionality |
|
is invoked. |
|
This option will stop topology creation and firmware load upfront. |
|
It is intended for SOF CI/releases and not for users or distros. |
|
Say Y if you want strict ABI checks for an SOF release. |
|
If you are not involved in SOF releases and CI development, |
|
select "N". |
|
|
|
config SND_SOC_SOF_DEBUG |
|
bool "SOF debugging features" |
|
help |
|
This option can be used to enable or disable individual SOF firmware |
|
and driver debugging options. |
|
Say Y if you are debugging SOF FW or drivers. |
|
If unsure select "N". |
|
|
|
if SND_SOC_SOF_DEBUG |
|
|
|
config SND_SOC_SOF_FORCE_NOCODEC_MODE |
|
bool "SOF force nocodec Mode" |
|
depends on SND_SOC_SOF_NOCODEC_SUPPORT |
|
help |
|
This forces SOF to use dummy/nocodec as machine driver, even |
|
though there is a codec detected on the real platform. This is |
|
typically only enabled for developers for debug purposes, before |
|
codec/machine driver is ready, or to exclude the impact of those |
|
drivers. |
|
Say Y if you need this force nocodec mode option. |
|
If unsure select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_XRUN_STOP |
|
bool "SOF stop on XRUN" |
|
help |
|
This option forces PCMs to stop on any XRUN event. This is useful to |
|
preserve any trace data and pipeline status prior to the XRUN. |
|
Say Y if you are debugging SOF FW pipeline XRUNs. |
|
If unsure select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_VERBOSE_IPC |
|
bool "SOF verbose IPC logs" |
|
help |
|
This option enables more verbose IPC logs, with command types in |
|
human-readable form instead of just 32-bit hex dumps. This is useful |
|
if you are trying to debug IPC with the DSP firmware. |
|
If unsure select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_FORCE_IPC_POSITION |
|
bool "SOF force to use IPC for position update on SKL+" |
|
help |
|
This option forces to handle stream position update IPCs and run PCM |
|
elapse to inform ALSA about that, on platforms (e.g. Intel SKL+) that |
|
with other approach (e.g. HDAC DPIB/posbuf) to elapse PCM. |
|
On platforms (e.g. Intel SKL-) where position update IPC is the only |
|
one choice, this setting won't impact anything. |
|
If you are trying to debug pointer update with position IPCs or where |
|
DPIB/posbuf is not ready, select "Y". |
|
If unsure select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_ENABLE_DEBUGFS_CACHE |
|
bool "SOF enable debugfs caching" |
|
help |
|
This option enables caching of debugfs |
|
memory -> DSP resource (memory, register, etc) |
|
before the audio DSP is suspended. This will increase the suspend |
|
latency and therefore should be used for debug purposes only. |
|
Say Y if you want to enable caching the memory windows. |
|
If unsure, select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_ENABLE_FIRMWARE_TRACE |
|
bool "SOF enable firmware trace" |
|
help |
|
The firmware trace can be enabled either at build-time with |
|
this option, or dynamically by setting flags in the SOF core |
|
module parameter (similar to dynamic debug). |
|
If unsure, select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_IPC_FLOOD_TEST |
|
bool "SOF enable IPC flood test" |
|
help |
|
This option enables the IPC flood test which can be used to flood |
|
the DSP with test IPCs and gather stats about response times. |
|
Say Y if you want to enable IPC flood test. |
|
If unsure, select "N". |
|
|
|
config SND_SOC_SOF_DEBUG_RETAIN_DSP_CONTEXT |
|
bool "SOF retain DSP context on any FW exceptions" |
|
help |
|
This option keeps the DSP in D0 state so that firmware debug |
|
information can be retained and dumped to userspace. |
|
Say Y if you want to retain DSP context for FW exceptions. |
|
If unsure, select "N". |
|
|
|
endif ## SND_SOC_SOF_DEBUG |
|
|
|
endif ## SND_SOC_SOF_DEVELOPER_SUPPORT |
|
|
|
config SND_SOC_SOF |
|
tristate |
|
select SND_SOC_TOPOLOGY |
|
select SND_SOC_SOF_NOCODEC if SND_SOC_SOF_NOCODEC_SUPPORT |
|
help |
|
This option is not user-selectable but automagically handled by |
|
'select' statements at a higher level. |
|
The selection is made at the top level and does not exactly follow |
|
module dependencies but since the module or built-in type is decided |
|
at the top level it doesn't matter. |
|
|
|
config SND_SOC_SOF_PROBE_WORK_QUEUE |
|
bool |
|
help |
|
This option is not user-selectable but automagically handled by |
|
'select' statements at a higher level. |
|
When selected, the probe is handled in two steps, for example to |
|
avoid lockdeps if request_module is used in the probe. |
|
|
|
source "sound/soc/sof/imx/Kconfig" |
|
source "sound/soc/sof/intel/Kconfig" |
|
source "sound/soc/sof/xtensa/Kconfig" |
|
|
|
endif
|
|
|