268 lines · plain
1# SPDX-License-Identifier: GPL-2.0-only2# ALSA soundcard-configuration3config SND_TIMER4 tristate5 6config SND_PCM7 tristate8 select SND_TIMER if SND_PCM_TIMER9 10config SND_PCM_ELD11 bool12 13config SND_PCM_IEC95814 bool15 16config SND_DMAENGINE_PCM17 tristate18 19config SND_HWDEP20 tristate21 22config SND_SEQ_DEVICE23 tristate24 25config SND_RAWMIDI26 tristate27 select SND_SEQ_DEVICE if SND_SEQUENCER != n28 29config SND_UMP30 tristate31 select SND_RAWMIDI32 33config SND_UMP_LEGACY_RAWMIDI34 bool "Legacy raw MIDI support for UMP streams"35 depends on SND_UMP36 help37 This option enables the legacy raw MIDI support for UMP streams.38 When this option is set, an additional rawmidi device for the39 legacy MIDI 1.0 byte streams is created for each UMP Endpoint.40 The device contains 16 substreams corresponding to UMP groups.41 42config SND_CORE_TEST43 tristate "Sound core KUnit test"44 depends on KUNIT45 select SND_PCM46 default KUNIT_ALL_TESTS47 help48 This options enables the sound core functions KUnit test.49 50 KUnit tests run during boot and output the results to the debug51 log in TAP format (https://testanything.org/). Only useful for52 kernel devs running KUnit test harness and are not for inclusion53 into a production build.54 55 For more information on KUnit and unit tests in general, refer56 to the KUnit documentation in Documentation/dev-tools/kunit/.57 58 59config SND_COMPRESS_OFFLOAD60 tristate61 62config SND_JACK63 bool64 65# enable input device support in jack layer66config SND_JACK_INPUT_DEV67 bool68 depends on SND_JACK69 default y if INPUT=y || INPUT=SND70 71config SND_OSSEMUL72 bool "Enable OSS Emulation"73 select SOUND_OSS_CORE74 help75 This option enables the build of OSS emulation layer.76 77config SND_MIXER_OSS78 tristate "OSS Mixer API"79 depends on SND_OSSEMUL80 help81 To enable OSS mixer API emulation (/dev/mixer*), say Y here82 and read <file:Documentation/sound/designs/oss-emulation.rst>.83 84 Many programs still use the OSS API, so say Y.85 86 To compile this driver as a module, choose M here: the module87 will be called snd-mixer-oss.88 89config SND_PCM_OSS90 tristate "OSS PCM (digital audio) API"91 depends on SND_OSSEMUL92 select SND_PCM93 help94 To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y95 here and read <file:Documentation/sound/designs/oss-emulation.rst>.96 97 Many programs still use the OSS API, so say Y.98 99 To compile this driver as a module, choose M here: the module100 will be called snd-pcm-oss.101 102config SND_PCM_OSS_PLUGINS103 bool "OSS PCM (digital audio) API - Include plugin system"104 depends on SND_PCM_OSS105 default y106 help107 If you disable this option, the ALSA's OSS PCM API will not108 support conversion of channels, formats and rates. It will109 behave like most of new OSS/Free drivers in 2.4/2.6 kernels.110 111config SND_PCM_TIMER112 bool "PCM timer interface" if EXPERT113 default y114 help115 If you disable this option, pcm timer will be unavailable, so116 those stubs that use pcm timer (e.g. dmix, dsnoop & co) may work117 incorrectly.118 119 For some embedded devices, we may disable it to reduce memory120 footprint, about 20KB on x86_64 platform.121 122config SND_HRTIMER123 tristate "HR-timer backend support"124 depends on HIGH_RES_TIMERS125 select SND_TIMER126 help127 Say Y here to enable HR-timer backend for ALSA timer. ALSA uses128 the hrtimer as a precise timing source. The ALSA sequencer code129 also can use this timing source.130 131 To compile this driver as a module, choose M here: the module132 will be called snd-hrtimer.133 134config SND_DYNAMIC_MINORS135 bool "Dynamic device file minor numbers"136 help137 If you say Y here, the minor numbers of ALSA device files in138 /dev/snd/ are allocated dynamically. This allows you to have139 more than 8 sound cards, but requires a dynamic device file140 system like udev.141 142 If you are unsure about this, say N here.143 144config SND_MAX_CARDS145 int "Max number of sound cards"146 range 4 256147 default 32148 depends on SND_DYNAMIC_MINORS149 help150 Specify the max number of sound cards that can be assigned151 on a single machine.152 153config SND_SUPPORT_OLD_API154 bool "Support old ALSA API"155 default y156 help157 Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3158 or older).159 160config SND_PROC_FS161 bool "Sound Proc FS Support" if EXPERT162 depends on PROC_FS163 default y164 help165 Say 'N' to disable Sound proc FS, which may reduce code size about166 9KB on x86_64 platform.167 If unsure say Y.168 169config SND_VERBOSE_PROCFS170 bool "Verbose procfs contents"171 depends on SND_PROC_FS172 default y173 help174 Say Y here to include code for verbose procfs contents (provides175 useful information to developers when a problem occurs). On the176 other side, it makes the ALSA subsystem larger.177 178config SND_CTL_FAST_LOOKUP179 bool "Fast lookup of control elements" if EXPERT180 default y181 select XARRAY_MULTI182 help183 This option enables the faster lookup of control elements.184 It will consume more memory because of the additional Xarray.185 If you want to choose the memory footprint over the performance186 inevitably, turn this off.187 188config SND_DEBUG189 bool "Debug"190 help191 Say Y here to enable ALSA debug code.192 193config SND_DEBUG_VERBOSE194 bool "More verbose debug"195 depends on SND_DEBUG196 help197 Say Y here to enable extra-verbose debugging messages.198 199 Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.200 So, say Y only if you are ready to be annoyed.201 202config SND_PCM_XRUN_DEBUG203 bool "Enable PCM ring buffer overrun/underrun debugging"204 default n205 depends on SND_DEBUG && SND_VERBOSE_PROCFS206 help207 Say Y to enable the PCM ring buffer overrun/underrun debugging.208 It is usually not required, but if you have trouble with209 sound clicking when system is loaded, it may help to determine210 the process or driver which causes the scheduling gaps.211 212config SND_CTL_INPUT_VALIDATION213 bool "Validate input data to control API"214 help215 Say Y to enable the additional validation for the input data to216 each control element, including the value range checks.217 An error is returned from ALSA core for invalid inputs without218 passing to the driver. This is a kind of hardening for drivers219 that have no proper error checks, at the cost of a slight220 performance overhead.221 222config SND_CTL_DEBUG223 bool "Enable debugging feature for control API"224 depends on SND_DEBUG225 help226 Say Y to enable the debugging feature for ALSA control API.227 It performs the additional sanity-checks for each control element228 read access, such as whether the values returned from the driver229 are in the proper ranges or the check of the invalid access at230 out-of-array areas. The error is printed when the driver gives231 such unexpected values.232 When you develop a driver that deals with control elements, it's233 strongly recommended to try this one once and verify whether you see234 any relevant errors or not.235 236config SND_JACK_INJECTION_DEBUG237 bool "Sound jack injection interface via debugfs"238 depends on SND_JACK && SND_DEBUG && DEBUG_FS239 help240 This option can be used to enable or disable sound jack241 software injection.242 Say Y if you are debugging via jack injection interface.243 If unsure select "N".244 245config SND_UTIMER246 bool "Enable support for userspace-controlled virtual timers"247 depends on SND_TIMER248 help249 Say Y to enable the support of userspace-controlled timers. These250 timers are purely virtual, and they are supposed to be triggered251 from userspace. They could be quite useful when synchronizing the252 sound timing with userspace applications (for instance, when sending253 data through snd-aloop).254 255config SND_VMASTER256 bool257 258config SND_DMA_SGBUF259 def_bool y260 depends on X86261 262config SND_CTL_LED263 tristate264 select NEW_LEDS if SND_CTL_LED265 select LEDS_TRIGGERS if SND_CTL_LED266 267source "sound/core/seq/Kconfig"268