xref: /openbmc/linux/sound/core/Kconfig (revision fa0a497b)
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"
258