Loading...
1# SPDX-License-Identifier: GPL-2.0-only
2# ALSA soundcard-configuration
3config SND_TIMER
4 tristate
5
6config SND_PCM
7 tristate
8 select SND_TIMER if SND_PCM_TIMER
9
10config SND_PCM_ELD
11 bool
12
13config SND_PCM_IEC958
14 bool
15
16config SND_DMAENGINE_PCM
17 tristate
18
19config SND_HWDEP
20 tristate
21
22config SND_SEQ_DEVICE
23 tristate
24
25config SND_RAWMIDI
26 tristate
27 select SND_SEQ_DEVICE if SND_SEQUENCER != n
28
29config SND_COMPRESS_OFFLOAD
30 tristate
31
32config SND_JACK
33 bool
34
35# enable input device support in jack layer
36config SND_JACK_INPUT_DEV
37 bool
38 depends on SND_JACK
39 default y if INPUT=y || INPUT=SND
40
41config 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
47config 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
59config 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
72config 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
81config 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 incorrectlly.
88
89 For some embedded devices, we may disable it to reduce memory
90 footprint, about 20KB on x86_64 platform.
91
92config 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
104config 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
114config 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
123config 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
130config 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
139config 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
148config 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
157config SND_DEBUG
158 bool "Debug"
159 help
160 Say Y here to enable ALSA debug code.
161
162config SND_DEBUG_VERBOSE
163 bool "More verbose debug"
164 depends on SND_DEBUG
165 help
166 Say Y here to enable extra-verbose debugging messages.
167
168 Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
169 So, say Y only if you are ready to be annoyed.
170
171config SND_PCM_XRUN_DEBUG
172 bool "Enable PCM ring buffer overrun/underrun debugging"
173 default n
174 depends on SND_DEBUG && SND_VERBOSE_PROCFS
175 help
176 Say Y to enable the PCM ring buffer overrun/underrun debugging.
177 It is usually not required, but if you have trouble with
178 sound clicking when system is loaded, it may help to determine
179 the process or driver which causes the scheduling gaps.
180
181config SND_VMASTER
182 bool
183
184config SND_DMA_SGBUF
185 def_bool y
186 depends on X86
187
188source "sound/core/seq/Kconfig"
1# ALSA soundcard-configuration
2config SND_TIMER
3 tristate
4
5config SND_PCM
6 tristate
7 select SND_TIMER if SND_PCM_TIMER
8
9config SND_PCM_ELD
10 bool
11
12config SND_PCM_IEC958
13 bool
14
15config SND_DMAENGINE_PCM
16 tristate
17
18config SND_HWDEP
19 tristate
20
21config SND_RAWMIDI
22 tristate
23
24config SND_COMPRESS_OFFLOAD
25 tristate
26
27config SND_JACK
28 bool
29
30# enable input device support in jack layer
31config SND_JACK_INPUT_DEV
32 bool
33 depends on SND_JACK
34 default y if INPUT=y || INPUT=SND
35
36config SND_SEQUENCER
37 tristate "Sequencer support"
38 select SND_TIMER
39 help
40 Say Y or M to enable MIDI sequencer and router support. This
41 feature allows routing and enqueueing of MIDI events. Events
42 can be processed at a given time.
43
44 Many programs require this feature, so you should enable it
45 unless you know what you're doing.
46
47config SND_SEQ_DUMMY
48 tristate "Sequencer dummy client"
49 depends on SND_SEQUENCER
50 help
51 Say Y here to enable the dummy sequencer client. This client
52 is a simple MIDI-through client: all normal input events are
53 redirected to the output port immediately.
54
55 You don't need this unless you want to connect many MIDI
56 devices or applications together.
57
58 To compile this driver as a module, choose M here: the module
59 will be called snd-seq-dummy.
60
61config SND_OSSEMUL
62 select SOUND_OSS_CORE
63 bool
64
65config SND_MIXER_OSS
66 tristate "OSS Mixer API"
67 select SND_OSSEMUL
68 help
69 To enable OSS mixer API emulation (/dev/mixer*), say Y here
70 and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
71
72 Many programs still use the OSS API, so say Y.
73
74 To compile this driver as a module, choose M here: the module
75 will be called snd-mixer-oss.
76
77config SND_PCM_OSS
78 tristate "OSS PCM (digital audio) API"
79 select SND_OSSEMUL
80 select SND_PCM
81 help
82 To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
83 here and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
84
85 Many programs still use the OSS API, so say Y.
86
87 To compile this driver as a module, choose M here: the module
88 will be called snd-pcm-oss.
89
90config SND_PCM_OSS_PLUGINS
91 bool "OSS PCM (digital audio) API - Include plugin system"
92 depends on SND_PCM_OSS
93 default y
94 help
95 If you disable this option, the ALSA's OSS PCM API will not
96 support conversion of channels, formats and rates. It will
97 behave like most of new OSS/Free drivers in 2.4/2.6 kernels.
98
99config SND_PCM_TIMER
100 bool "PCM timer interface" if EXPERT
101 default y
102 help
103 If you disable this option, pcm timer will be unavailable, so
104 those stubs that use pcm timer (e.g. dmix, dsnoop & co) may work
105 incorrectlly.
106
107 For some embedded devices, we may disable it to reduce memory
108 footprint, about 20KB on x86_64 platform.
109
110config SND_SEQUENCER_OSS
111 bool "OSS Sequencer API"
112 depends on SND_SEQUENCER
113 select SND_OSSEMUL
114 help
115 Say Y here to enable OSS sequencer emulation (both
116 /dev/sequencer and /dev/music interfaces).
117
118 Many programs still use the OSS API, so say Y.
119
120 If you choose M in "Sequencer support" (SND_SEQUENCER),
121 this will be compiled as a module. The module will be called
122 snd-seq-oss.
123
124config SND_HRTIMER
125 tristate "HR-timer backend support"
126 depends on HIGH_RES_TIMERS
127 select SND_TIMER
128 help
129 Say Y here to enable HR-timer backend for ALSA timer. ALSA uses
130 the hrtimer as a precise timing source. The ALSA sequencer code
131 also can use this timing source.
132
133 To compile this driver as a module, choose M here: the module
134 will be called snd-hrtimer.
135
136config SND_SEQ_HRTIMER_DEFAULT
137 bool "Use HR-timer as default sequencer timer"
138 depends on SND_HRTIMER && SND_SEQUENCER
139 default y
140 help
141 Say Y here to use the HR-timer backend as the default sequencer
142 timer.
143
144config SND_RTCTIMER
145 tristate "RTC Timer support"
146 depends on RTC
147 select SND_TIMER
148 help
149 Say Y here to enable RTC timer support for ALSA. ALSA uses
150 the RTC timer as a precise timing source and maps the RTC
151 timer to ALSA's timer interface. The ALSA sequencer code also
152 can use this timing source.
153
154 To compile this driver as a module, choose M here: the module
155 will be called snd-rtctimer.
156
157 Note that this option is exclusive with the new RTC drivers
158 (CONFIG_RTC_CLASS) since this requires the old API.
159
160config SND_SEQ_RTCTIMER_DEFAULT
161 bool "Use RTC as default sequencer timer"
162 depends on SND_RTCTIMER && SND_SEQUENCER
163 depends on !SND_SEQ_HRTIMER_DEFAULT
164 default y
165 help
166 Say Y here to use the RTC timer as the default sequencer
167 timer. This is strongly recommended because it ensures
168 precise MIDI timing even when the system timer runs at less
169 than 1000 Hz.
170
171 If in doubt, say Y.
172
173config SND_DYNAMIC_MINORS
174 bool "Dynamic device file minor numbers"
175 help
176 If you say Y here, the minor numbers of ALSA device files in
177 /dev/snd/ are allocated dynamically. This allows you to have
178 more than 8 sound cards, but requires a dynamic device file
179 system like udev.
180
181 If you are unsure about this, say N here.
182
183config SND_MAX_CARDS
184 int "Max number of sound cards"
185 range 4 256
186 default 32
187 depends on SND_DYNAMIC_MINORS
188 help
189 Specify the max number of sound cards that can be assigned
190 on a single machine.
191
192config SND_SUPPORT_OLD_API
193 bool "Support old ALSA API"
194 default y
195 help
196 Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
197 or older).
198
199config SND_PROC_FS
200 bool "Sound Proc FS Support" if EXPERT
201 depends on PROC_FS
202 default y
203 help
204 Say 'N' to disable Sound proc FS, which may reduce code size about
205 9KB on x86_64 platform.
206 If unsure say Y.
207
208config SND_VERBOSE_PROCFS
209 bool "Verbose procfs contents"
210 depends on SND_PROC_FS
211 default y
212 help
213 Say Y here to include code for verbose procfs contents (provides
214 useful information to developers when a problem occurs). On the
215 other side, it makes the ALSA subsystem larger.
216
217config SND_VERBOSE_PRINTK
218 bool "Verbose printk"
219 help
220 Say Y here to enable verbose log messages. These messages
221 will help to identify source file and position containing
222 printed messages.
223
224 You don't need this unless you're debugging ALSA.
225
226config SND_DEBUG
227 bool "Debug"
228 help
229 Say Y here to enable ALSA debug code.
230
231config SND_DEBUG_VERBOSE
232 bool "More verbose debug"
233 depends on SND_DEBUG
234 help
235 Say Y here to enable extra-verbose debugging messages.
236
237 Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
238 So, say Y only if you are ready to be annoyed.
239
240config SND_PCM_XRUN_DEBUG
241 bool "Enable PCM ring buffer overrun/underrun debugging"
242 default n
243 depends on SND_DEBUG && SND_VERBOSE_PROCFS
244 help
245 Say Y to enable the PCM ring buffer overrun/underrun debugging.
246 It is usually not required, but if you have trouble with
247 sound clicking when system is loaded, it may help to determine
248 the process or driver which causes the scheduling gaps.
249
250config SND_VMASTER
251 bool
252
253config SND_DMA_SGBUF
254 def_bool y
255 depends on X86
256
257source "sound/core/seq/Kconfig"