Merge tag 'pinctrl-v6.0-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw...
[linux-2.6-microblaze.git] / sound / core / Kconfig
1 # SPDX-License-Identifier: GPL-2.0-only
2 # ALSA soundcard-configuration
3 config SND_TIMER
4         tristate
5
6 config SND_PCM
7         tristate
8         select SND_TIMER if SND_PCM_TIMER
9
10 config SND_PCM_ELD
11         bool
12
13 config SND_PCM_IEC958
14         bool
15
16 config SND_DMAENGINE_PCM
17         tristate
18
19 config SND_HWDEP
20         tristate
21
22 config SND_SEQ_DEVICE
23         tristate
24
25 config SND_RAWMIDI
26         tristate
27         select SND_SEQ_DEVICE if SND_SEQUENCER != n
28
29 config SND_COMPRESS_OFFLOAD
30         tristate
31
32 config SND_JACK
33         bool
34
35 # enable input device support in jack layer
36 config SND_JACK_INPUT_DEV
37         bool
38         depends on SND_JACK
39         default y if INPUT=y || INPUT=SND
40
41 config SND_OSSEMUL
42         bool "Enable OSS Emulation"
43         select SOUND_OSS_CORE
44         help
45           This option enables the build of OSS emulation layer.
46
47 config SND_MIXER_OSS
48         tristate "OSS Mixer API"
49         depends on SND_OSSEMUL
50         help
51           To enable OSS mixer API emulation (/dev/mixer*), say Y here
52           and read <file:Documentation/sound/designs/oss-emulation.rst>.
53
54           Many programs still use the OSS API, so say Y.
55
56           To compile this driver as a module, choose M here: the module
57           will be called snd-mixer-oss.
58
59 config SND_PCM_OSS
60         tristate "OSS PCM (digital audio) API"
61         depends on SND_OSSEMUL
62         select SND_PCM
63         help
64           To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
65           here and read <file:Documentation/sound/designs/oss-emulation.rst>.
66
67           Many programs still use the OSS API, so say Y.
68
69           To compile this driver as a module, choose M here: the module
70           will be called snd-pcm-oss.
71
72 config SND_PCM_OSS_PLUGINS
73         bool "OSS PCM (digital audio) API - Include plugin system"
74         depends on SND_PCM_OSS
75         default y
76         help
77           If you disable this option, the ALSA's OSS PCM API will not
78           support conversion of channels, formats and rates. It will
79           behave like most of new OSS/Free drivers in 2.4/2.6 kernels.
80
81 config SND_PCM_TIMER
82         bool "PCM timer interface" if EXPERT
83         default y
84         help
85           If you disable this option, pcm timer will be unavailable, so
86           those stubs that use pcm timer (e.g. dmix, dsnoop & co) may work
87           incorrectly.
88
89           For some embedded devices, we may disable it to reduce memory
90           footprint, about 20KB on x86_64 platform.
91
92 config SND_HRTIMER
93         tristate "HR-timer backend support"
94         depends on HIGH_RES_TIMERS
95         select SND_TIMER
96         help
97           Say Y here to enable HR-timer backend for ALSA timer.  ALSA uses
98           the hrtimer as a precise timing source. The ALSA sequencer code
99           also can use this timing source.
100
101           To compile this driver as a module, choose M here: the module
102           will be called snd-hrtimer.
103
104 config SND_DYNAMIC_MINORS
105         bool "Dynamic device file minor numbers"
106         help
107           If you say Y here, the minor numbers of ALSA device files in
108           /dev/snd/ are allocated dynamically.  This allows you to have
109           more than 8 sound cards, but requires a dynamic device file
110           system like udev.
111
112           If you are unsure about this, say N here.
113
114 config SND_MAX_CARDS
115         int "Max number of sound cards"
116         range 4 256
117         default 32
118         depends on SND_DYNAMIC_MINORS
119         help
120           Specify the max number of sound cards that can be assigned
121           on a single machine.
122
123 config SND_SUPPORT_OLD_API
124         bool "Support old ALSA API"
125         default y
126         help
127           Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
128           or older).
129
130 config SND_PROC_FS
131         bool "Sound Proc FS Support" if EXPERT
132         depends on PROC_FS
133         default y
134         help
135           Say 'N' to disable Sound proc FS, which may reduce code size about
136           9KB on x86_64 platform.
137           If unsure say Y.
138
139 config SND_VERBOSE_PROCFS
140         bool "Verbose procfs contents"
141         depends on SND_PROC_FS
142         default y
143         help
144           Say Y here to include code for verbose procfs contents (provides
145           useful information to developers when a problem occurs).  On the
146           other side, it makes the ALSA subsystem larger.
147
148 config SND_VERBOSE_PRINTK
149         bool "Verbose printk"
150         help
151           Say Y here to enable verbose log messages.  These messages
152           will help to identify source file and position containing
153           printed messages.
154
155           You don't need this unless you're debugging ALSA.
156
157 config SND_CTL_FAST_LOOKUP
158         bool "Fast lookup of control elements" if EXPERT
159         default y
160         select XARRAY_MULTI
161         help
162           This option enables the faster lookup of control elements.
163           It will consume more memory because of the additional Xarray.
164           If you want to choose the memory footprint over the performance
165           inevitably, turn this off.
166
167 config SND_DEBUG
168         bool "Debug"
169         help
170           Say Y here to enable ALSA debug code.
171
172 config SND_DEBUG_VERBOSE
173         bool "More verbose debug"
174         depends on SND_DEBUG
175         help
176           Say Y here to enable extra-verbose debugging messages.
177
178           Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
179           So, say Y only if you are ready to be annoyed.
180
181 config SND_PCM_XRUN_DEBUG
182         bool "Enable PCM ring buffer overrun/underrun debugging"
183         default n
184         depends on SND_DEBUG && SND_VERBOSE_PROCFS
185         help
186           Say Y to enable the PCM ring buffer overrun/underrun debugging.
187           It is usually not required, but if you have trouble with
188           sound clicking when system is loaded, it may help to determine
189           the process or driver which causes the scheduling gaps.
190
191 config SND_CTL_INPUT_VALIDATION
192         bool "Validate input data to control API"
193         help
194           Say Y to enable the additional validation for the input data to
195           each control element, including the value range checks.
196           An error is returned from ALSA core for invalid inputs without
197           passing to the driver.  This is a kind of hardening for drivers
198           that have no proper error checks, at the cost of a slight
199           performance overhead.
200
201 config SND_CTL_DEBUG
202         bool "Enable debugging feature for control API"
203         depends on SND_DEBUG
204         help
205           Say Y to enable the debugging feature for ALSA control API.
206           It performs the additional sanity-checks for each control element
207           read access, such as whether the values returned from the driver
208           are in the proper ranges or the check of the invalid access at
209           out-of-array areas.  The error is printed when the driver gives
210           such unexpected values.
211           When you develop a driver that deals with control elements, it's
212           strongly recommended to try this one once and verify whether you see
213           any relevant errors or not.
214
215 config SND_JACK_INJECTION_DEBUG
216         bool "Sound jack injection interface via debugfs"
217         depends on SND_JACK && SND_DEBUG && DEBUG_FS
218         help
219           This option can be used to enable or disable sound jack
220           software injection.
221           Say Y if you are debugging via jack injection interface.
222           If unsure select "N".
223
224 config SND_VMASTER
225         bool
226
227 config SND_DMA_SGBUF
228         def_bool y
229         depends on X86
230
231 config SND_CTL_LED
232         tristate
233         select NEW_LEDS if SND_CTL_LED
234         select LEDS_TRIGGERS if SND_CTL_LED
235         select LEDS_TRIGGER_AUDIO if SND_CTL_LED
236
237 source "sound/core/seq/Kconfig"