# SPDX-License-Identifier: GPL-2.0-only # ALSA soundcard-configuration config SND_TIMER tristate config SND_PCM tristate select SND_TIMER if SND_PCM_TIMER config SND_PCM_ELD bool config SND_PCM_IEC958 bool config SND_DMAENGINE_PCM tristate config SND_HWDEP tristate config SND_SEQ_DEVICE tristate config SND_RAWMIDI tristate select SND_SEQ_DEVICE if SND_SEQUENCER != n config SND_UMP tristate select SND_RAWMIDI config SND_UMP_LEGACY_RAWMIDI bool "Legacy raw MIDI support for UMP streams" depends on SND_UMP help This option enables the legacy raw MIDI support for UMP streams. When this option is set, an additional rawmidi device for the legacy MIDI 1.0 byte streams is created for each UMP Endpoint. The device contains 16 substreams corresponding to UMP groups. config SND_COMPRESS_OFFLOAD tristate config SND_JACK bool # enable input device support in jack layer config SND_JACK_INPUT_DEV bool depends on SND_JACK default y if INPUT=y || INPUT=SND config SND_OSSEMUL bool "Enable OSS Emulation" select SOUND_OSS_CORE help This option enables the build of OSS emulation layer. config SND_MIXER_OSS tristate "OSS Mixer API" depends on SND_OSSEMUL help To enable OSS mixer API emulation (/dev/mixer*), say Y here and read <file:Documentation/sound/designs/oss-emulation.rst>. Many programs still use the OSS API, so say Y. To compile this driver as a module, choose M here: the module will be called snd-mixer-oss. config SND_PCM_OSS tristate "OSS PCM (digital audio) API" depends on SND_OSSEMUL select SND_PCM help To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y here and read <file:Documentation/sound/designs/oss-emulation.rst>. Many programs still use the OSS API, so say Y. To compile this driver as a module, choose M here: the module will be called snd-pcm-oss. config SND_PCM_OSS_PLUGINS bool "OSS PCM (digital audio) API - Include plugin system" depends on SND_PCM_OSS default y help If you disable this option, the ALSA's OSS PCM API will not support conversion of channels, formats and rates. It will behave like most of new OSS/Free drivers in 2.4/2.6 kernels. config SND_PCM_TIMER bool "PCM timer interface" if EXPERT default y help If you disable this option, pcm timer will be unavailable, so those stubs that use pcm timer (e.g. dmix, dsnoop & co) may work incorrectly. For some embedded devices, we may disable it to reduce memory footprint, about 20KB on x86_64 platform. config SND_HRTIMER tristate "HR-timer backend support" depends on HIGH_RES_TIMERS select SND_TIMER help Say Y here to enable HR-timer backend for ALSA timer. ALSA uses the hrtimer as a precise timing source. The ALSA sequencer code also can use this timing source. To compile this driver as a module, choose M here: the module will be called snd-hrtimer. config SND_DYNAMIC_MINORS bool "Dynamic device file minor numbers" help If you say Y here, the minor numbers of ALSA device files in /dev/snd/ are allocated dynamically. This allows you to have more than 8 sound cards, but requires a dynamic device file system like udev. If you are unsure about this, say N here. config SND_MAX_CARDS int "Max number of sound cards" range 4 256 default 32 depends on SND_DYNAMIC_MINORS help Specify the max number of sound cards that can be assigned on a single machine. config SND_SUPPORT_OLD_API bool "Support old ALSA API" default y help Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3 or older). config SND_PROC_FS bool "Sound Proc FS Support" if EXPERT depends on PROC_FS default y help Say 'N' to disable Sound proc FS, which may reduce code size about 9KB on x86_64 platform. If unsure say Y. config SND_VERBOSE_PROCFS bool "Verbose procfs contents" depends on SND_PROC_FS default y help Say Y here to include code for verbose procfs contents (provides useful information to developers when a problem occurs). On the other side, it makes the ALSA subsystem larger. config SND_VERBOSE_PRINTK bool "Verbose printk" help Say Y here to enable verbose log messages. These messages will help to identify source file and position containing printed messages. You don't need this unless you're debugging ALSA. config SND_CTL_FAST_LOOKUP bool "Fast lookup of control elements" if EXPERT default y select XARRAY_MULTI help This option enables the faster lookup of control elements. It will consume more memory because of the additional Xarray. If you want to choose the memory footprint over the performance inevitably, turn this off. config SND_DEBUG bool "Debug" help Say Y here to enable ALSA debug code. config SND_DEBUG_VERBOSE bool "More verbose debug" depends on SND_DEBUG help Say Y here to enable extra-verbose debugging messages. Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages. So, say Y only if you are ready to be annoyed. config SND_PCM_XRUN_DEBUG bool "Enable PCM ring buffer overrun/underrun debugging" default n depends on SND_DEBUG && SND_VERBOSE_PROCFS help Say Y to enable the PCM ring buffer overrun/underrun debugging. It is usually not required, but if you have trouble with sound clicking when system is loaded, it may help to determine the process or driver which causes the scheduling gaps. config SND_CTL_INPUT_VALIDATION bool "Validate input data to control API" help Say Y to enable the additional validation for the input data to each control element, including the value range checks. An error is returned from ALSA core for invalid inputs without passing to the driver. This is a kind of hardening for drivers that have no proper error checks, at the cost of a slight performance overhead. config SND_CTL_DEBUG bool "Enable debugging feature for control API" depends on SND_DEBUG help Say Y to enable the debugging feature for ALSA control API. It performs the additional sanity-checks for each control element read access, such as whether the values returned from the driver are in the proper ranges or the check of the invalid access at out-of-array areas. The error is printed when the driver gives such unexpected values. When you develop a driver that deals with control elements, it's strongly recommended to try this one once and verify whether you see any relevant errors or not. config SND_JACK_INJECTION_DEBUG bool "Sound jack injection interface via debugfs" depends on SND_JACK && SND_DEBUG && DEBUG_FS help This option can be used to enable or disable sound jack software injection. Say Y if you are debugging via jack injection interface. If unsure select "N". config SND_VMASTER bool config SND_DMA_SGBUF def_bool y depends on X86 config SND_CTL_LED tristate select NEW_LEDS if SND_CTL_LED select LEDS_TRIGGERS if SND_CTL_LED select LEDS_TRIGGER_AUDIO if SND_CTL_LED source "sound/core/seq/Kconfig"