18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only 28c2ecf20Sopenharmony_ci# ALSA soundcard-configuration 38c2ecf20Sopenharmony_ciconfig SND_TIMER 48c2ecf20Sopenharmony_ci tristate 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ciconfig SND_PCM 78c2ecf20Sopenharmony_ci tristate 88c2ecf20Sopenharmony_ci select SND_TIMER if SND_PCM_TIMER 98c2ecf20Sopenharmony_ci 108c2ecf20Sopenharmony_ciconfig SND_PCM_ELD 118c2ecf20Sopenharmony_ci bool 128c2ecf20Sopenharmony_ci 138c2ecf20Sopenharmony_ciconfig SND_PCM_IEC958 148c2ecf20Sopenharmony_ci bool 158c2ecf20Sopenharmony_ci 168c2ecf20Sopenharmony_ciconfig SND_DMAENGINE_PCM 178c2ecf20Sopenharmony_ci tristate 188c2ecf20Sopenharmony_ci 198c2ecf20Sopenharmony_ciconfig SND_HWDEP 208c2ecf20Sopenharmony_ci tristate 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_ciconfig SND_SEQ_DEVICE 238c2ecf20Sopenharmony_ci tristate 248c2ecf20Sopenharmony_ci 258c2ecf20Sopenharmony_ciconfig SND_RAWMIDI 268c2ecf20Sopenharmony_ci tristate 278c2ecf20Sopenharmony_ci select SND_SEQ_DEVICE if SND_SEQUENCER != n 288c2ecf20Sopenharmony_ci 298c2ecf20Sopenharmony_ciconfig SND_COMPRESS_OFFLOAD 308c2ecf20Sopenharmony_ci tristate 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ciconfig SND_JACK 338c2ecf20Sopenharmony_ci bool 348c2ecf20Sopenharmony_ci 358c2ecf20Sopenharmony_ci# enable input device support in jack layer 368c2ecf20Sopenharmony_ciconfig SND_JACK_INPUT_DEV 378c2ecf20Sopenharmony_ci bool 388c2ecf20Sopenharmony_ci depends on SND_JACK 398c2ecf20Sopenharmony_ci default y if INPUT=y || INPUT=SND 408c2ecf20Sopenharmony_ci 418c2ecf20Sopenharmony_ciconfig SND_OSSEMUL 428c2ecf20Sopenharmony_ci bool "Enable OSS Emulation" 438c2ecf20Sopenharmony_ci select SOUND_OSS_CORE 448c2ecf20Sopenharmony_ci help 458c2ecf20Sopenharmony_ci This option enables the build of OSS emulation layer. 468c2ecf20Sopenharmony_ci 478c2ecf20Sopenharmony_ciconfig SND_MIXER_OSS 488c2ecf20Sopenharmony_ci tristate "OSS Mixer API" 498c2ecf20Sopenharmony_ci depends on SND_OSSEMUL 508c2ecf20Sopenharmony_ci help 518c2ecf20Sopenharmony_ci To enable OSS mixer API emulation (/dev/mixer*), say Y here 528c2ecf20Sopenharmony_ci and read <file:Documentation/sound/designs/oss-emulation.rst>. 538c2ecf20Sopenharmony_ci 548c2ecf20Sopenharmony_ci Many programs still use the OSS API, so say Y. 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 578c2ecf20Sopenharmony_ci will be called snd-mixer-oss. 588c2ecf20Sopenharmony_ci 598c2ecf20Sopenharmony_ciconfig SND_PCM_OSS 608c2ecf20Sopenharmony_ci tristate "OSS PCM (digital audio) API" 618c2ecf20Sopenharmony_ci depends on SND_OSSEMUL 628c2ecf20Sopenharmony_ci select SND_PCM 638c2ecf20Sopenharmony_ci help 648c2ecf20Sopenharmony_ci To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y 658c2ecf20Sopenharmony_ci here and read <file:Documentation/sound/designs/oss-emulation.rst>. 668c2ecf20Sopenharmony_ci 678c2ecf20Sopenharmony_ci Many programs still use the OSS API, so say Y. 688c2ecf20Sopenharmony_ci 698c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 708c2ecf20Sopenharmony_ci will be called snd-pcm-oss. 718c2ecf20Sopenharmony_ci 728c2ecf20Sopenharmony_ciconfig SND_PCM_OSS_PLUGINS 738c2ecf20Sopenharmony_ci bool "OSS PCM (digital audio) API - Include plugin system" 748c2ecf20Sopenharmony_ci depends on SND_PCM_OSS 758c2ecf20Sopenharmony_ci default y 768c2ecf20Sopenharmony_ci help 778c2ecf20Sopenharmony_ci If you disable this option, the ALSA's OSS PCM API will not 788c2ecf20Sopenharmony_ci support conversion of channels, formats and rates. It will 798c2ecf20Sopenharmony_ci behave like most of new OSS/Free drivers in 2.4/2.6 kernels. 808c2ecf20Sopenharmony_ci 818c2ecf20Sopenharmony_ciconfig SND_PCM_TIMER 828c2ecf20Sopenharmony_ci bool "PCM timer interface" if EXPERT 838c2ecf20Sopenharmony_ci default y 848c2ecf20Sopenharmony_ci help 858c2ecf20Sopenharmony_ci If you disable this option, pcm timer will be unavailable, so 868c2ecf20Sopenharmony_ci those stubs that use pcm timer (e.g. dmix, dsnoop & co) may work 878c2ecf20Sopenharmony_ci incorrectlly. 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci For some embedded devices, we may disable it to reduce memory 908c2ecf20Sopenharmony_ci footprint, about 20KB on x86_64 platform. 918c2ecf20Sopenharmony_ci 928c2ecf20Sopenharmony_ciconfig SND_HRTIMER 938c2ecf20Sopenharmony_ci tristate "HR-timer backend support" 948c2ecf20Sopenharmony_ci depends on HIGH_RES_TIMERS 958c2ecf20Sopenharmony_ci select SND_TIMER 968c2ecf20Sopenharmony_ci help 978c2ecf20Sopenharmony_ci Say Y here to enable HR-timer backend for ALSA timer. ALSA uses 988c2ecf20Sopenharmony_ci the hrtimer as a precise timing source. The ALSA sequencer code 998c2ecf20Sopenharmony_ci also can use this timing source. 1008c2ecf20Sopenharmony_ci 1018c2ecf20Sopenharmony_ci To compile this driver as a module, choose M here: the module 1028c2ecf20Sopenharmony_ci will be called snd-hrtimer. 1038c2ecf20Sopenharmony_ci 1048c2ecf20Sopenharmony_ciconfig SND_DYNAMIC_MINORS 1058c2ecf20Sopenharmony_ci bool "Dynamic device file minor numbers" 1068c2ecf20Sopenharmony_ci help 1078c2ecf20Sopenharmony_ci If you say Y here, the minor numbers of ALSA device files in 1088c2ecf20Sopenharmony_ci /dev/snd/ are allocated dynamically. This allows you to have 1098c2ecf20Sopenharmony_ci more than 8 sound cards, but requires a dynamic device file 1108c2ecf20Sopenharmony_ci system like udev. 1118c2ecf20Sopenharmony_ci 1128c2ecf20Sopenharmony_ci If you are unsure about this, say N here. 1138c2ecf20Sopenharmony_ci 1148c2ecf20Sopenharmony_ciconfig SND_MAX_CARDS 1158c2ecf20Sopenharmony_ci int "Max number of sound cards" 1168c2ecf20Sopenharmony_ci range 4 256 1178c2ecf20Sopenharmony_ci default 32 1188c2ecf20Sopenharmony_ci depends on SND_DYNAMIC_MINORS 1198c2ecf20Sopenharmony_ci help 1208c2ecf20Sopenharmony_ci Specify the max number of sound cards that can be assigned 1218c2ecf20Sopenharmony_ci on a single machine. 1228c2ecf20Sopenharmony_ci 1238c2ecf20Sopenharmony_ciconfig SND_SUPPORT_OLD_API 1248c2ecf20Sopenharmony_ci bool "Support old ALSA API" 1258c2ecf20Sopenharmony_ci default y 1268c2ecf20Sopenharmony_ci help 1278c2ecf20Sopenharmony_ci Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3 1288c2ecf20Sopenharmony_ci or older). 1298c2ecf20Sopenharmony_ci 1308c2ecf20Sopenharmony_ciconfig SND_PROC_FS 1318c2ecf20Sopenharmony_ci bool "Sound Proc FS Support" if EXPERT 1328c2ecf20Sopenharmony_ci depends on PROC_FS 1338c2ecf20Sopenharmony_ci default y 1348c2ecf20Sopenharmony_ci help 1358c2ecf20Sopenharmony_ci Say 'N' to disable Sound proc FS, which may reduce code size about 1368c2ecf20Sopenharmony_ci 9KB on x86_64 platform. 1378c2ecf20Sopenharmony_ci If unsure say Y. 1388c2ecf20Sopenharmony_ci 1398c2ecf20Sopenharmony_ciconfig SND_VERBOSE_PROCFS 1408c2ecf20Sopenharmony_ci bool "Verbose procfs contents" 1418c2ecf20Sopenharmony_ci depends on SND_PROC_FS 1428c2ecf20Sopenharmony_ci default y 1438c2ecf20Sopenharmony_ci help 1448c2ecf20Sopenharmony_ci Say Y here to include code for verbose procfs contents (provides 1458c2ecf20Sopenharmony_ci useful information to developers when a problem occurs). On the 1468c2ecf20Sopenharmony_ci other side, it makes the ALSA subsystem larger. 1478c2ecf20Sopenharmony_ci 1488c2ecf20Sopenharmony_ciconfig SND_VERBOSE_PRINTK 1498c2ecf20Sopenharmony_ci bool "Verbose printk" 1508c2ecf20Sopenharmony_ci help 1518c2ecf20Sopenharmony_ci Say Y here to enable verbose log messages. These messages 1528c2ecf20Sopenharmony_ci will help to identify source file and position containing 1538c2ecf20Sopenharmony_ci printed messages. 1548c2ecf20Sopenharmony_ci 1558c2ecf20Sopenharmony_ci You don't need this unless you're debugging ALSA. 1568c2ecf20Sopenharmony_ci 1578c2ecf20Sopenharmony_ciconfig SND_DEBUG 1588c2ecf20Sopenharmony_ci bool "Debug" 1598c2ecf20Sopenharmony_ci help 1608c2ecf20Sopenharmony_ci Say Y here to enable ALSA debug code. 1618c2ecf20Sopenharmony_ci 1628c2ecf20Sopenharmony_ciconfig SND_DEBUG_VERBOSE 1638c2ecf20Sopenharmony_ci bool "More verbose debug" 1648c2ecf20Sopenharmony_ci depends on SND_DEBUG 1658c2ecf20Sopenharmony_ci help 1668c2ecf20Sopenharmony_ci Say Y here to enable extra-verbose debugging messages. 1678c2ecf20Sopenharmony_ci 1688c2ecf20Sopenharmony_ci Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages. 1698c2ecf20Sopenharmony_ci So, say Y only if you are ready to be annoyed. 1708c2ecf20Sopenharmony_ci 1718c2ecf20Sopenharmony_ciconfig SND_PCM_XRUN_DEBUG 1728c2ecf20Sopenharmony_ci bool "Enable PCM ring buffer overrun/underrun debugging" 1738c2ecf20Sopenharmony_ci default n 1748c2ecf20Sopenharmony_ci depends on SND_DEBUG && SND_VERBOSE_PROCFS 1758c2ecf20Sopenharmony_ci help 1768c2ecf20Sopenharmony_ci Say Y to enable the PCM ring buffer overrun/underrun debugging. 1778c2ecf20Sopenharmony_ci It is usually not required, but if you have trouble with 1788c2ecf20Sopenharmony_ci sound clicking when system is loaded, it may help to determine 1798c2ecf20Sopenharmony_ci the process or driver which causes the scheduling gaps. 1808c2ecf20Sopenharmony_ci 1818c2ecf20Sopenharmony_ciconfig SND_CTL_VALIDATION 1828c2ecf20Sopenharmony_ci bool "Perform sanity-checks for each control element access" 1838c2ecf20Sopenharmony_ci depends on SND_DEBUG 1848c2ecf20Sopenharmony_ci help 1858c2ecf20Sopenharmony_ci Say Y to enable the additional validation of each control element 1868c2ecf20Sopenharmony_ci access, including sanity-checks like whether the values returned 1878c2ecf20Sopenharmony_ci from the driver are in the proper ranges or the check of the invalid 1888c2ecf20Sopenharmony_ci access at out-of-array areas. 1898c2ecf20Sopenharmony_ci 1908c2ecf20Sopenharmony_ciconfig SND_VMASTER 1918c2ecf20Sopenharmony_ci bool 1928c2ecf20Sopenharmony_ci 1938c2ecf20Sopenharmony_ciconfig SND_DMA_SGBUF 1948c2ecf20Sopenharmony_ci def_bool y 1958c2ecf20Sopenharmony_ci depends on X86 1968c2ecf20Sopenharmony_ci 1978c2ecf20Sopenharmony_cisource "sound/core/seq/Kconfig" 198