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