xref: /openbmc/linux/sound/core/Kconfig (revision 52948b3f)
11da177e4SLinus Torvalds# ALSA soundcard-configuration
21da177e4SLinus Torvaldsconfig SND_TIMER
31da177e4SLinus Torvalds	tristate
41da177e4SLinus Torvalds
51da177e4SLinus Torvaldsconfig SND_PCM
61da177e4SLinus Torvalds	tristate
71da177e4SLinus Torvalds	select SND_TIMER
81da177e4SLinus Torvalds
91da177e4SLinus Torvaldsconfig SND_HWDEP
101da177e4SLinus Torvalds	tristate
111da177e4SLinus Torvalds
121da177e4SLinus Torvaldsconfig SND_RAWMIDI
131da177e4SLinus Torvalds	tristate
141da177e4SLinus Torvalds
150d94e41aSMark Brown# To be effective this also requires INPUT - users should say:
160d94e41aSMark Brown#    select SND_JACK if INPUT=y || INPUT=SND
170d94e41aSMark Brown# to avoid having to force INPUT on.
180d94e41aSMark Brownconfig SND_JACK
190d94e41aSMark Brown	bool
200d94e41aSMark Brown
211da177e4SLinus Torvaldsconfig SND_SEQUENCER
221da177e4SLinus Torvalds	tristate "Sequencer support"
231da177e4SLinus Torvalds	select SND_TIMER
241da177e4SLinus Torvalds	help
251da177e4SLinus Torvalds	  Say Y or M to enable MIDI sequencer and router support.  This
261da177e4SLinus Torvalds	  feature allows routing and enqueueing of MIDI events.  Events
271da177e4SLinus Torvalds	  can be processed at a given time.
281da177e4SLinus Torvalds
291da177e4SLinus Torvalds	  Many programs require this feature, so you should enable it
301da177e4SLinus Torvalds	  unless you know what you're doing.
311da177e4SLinus Torvalds
321da177e4SLinus Torvaldsconfig SND_SEQ_DUMMY
331da177e4SLinus Torvalds	tristate "Sequencer dummy client"
341da177e4SLinus Torvalds	depends on SND_SEQUENCER
351da177e4SLinus Torvalds	help
361da177e4SLinus Torvalds	  Say Y here to enable the dummy sequencer client.  This client
371da177e4SLinus Torvalds	  is a simple MIDI-through client: all normal input events are
381da177e4SLinus Torvalds	  redirected to the output port immediately.
391da177e4SLinus Torvalds
401da177e4SLinus Torvalds	  You don't need this unless you want to connect many MIDI
411da177e4SLinus Torvalds	  devices or applications together.
421da177e4SLinus Torvalds
431da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
441da177e4SLinus Torvalds	  will be called snd-seq-dummy.
451da177e4SLinus Torvalds
461da177e4SLinus Torvaldsconfig SND_OSSEMUL
47d886e87cSTejun Heo	select SOUND_OSS_CORE
481da177e4SLinus Torvalds	bool
491da177e4SLinus Torvalds
501da177e4SLinus Torvaldsconfig SND_MIXER_OSS
511da177e4SLinus Torvalds	tristate "OSS Mixer API"
521da177e4SLinus Torvalds	select SND_OSSEMUL
531da177e4SLinus Torvalds	help
541da177e4SLinus Torvalds	  To enable OSS mixer API emulation (/dev/mixer*), say Y here
551da177e4SLinus Torvalds	  and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
561da177e4SLinus Torvalds
571da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
581da177e4SLinus Torvalds
591da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
601da177e4SLinus Torvalds	  will be called snd-mixer-oss.
611da177e4SLinus Torvalds
621da177e4SLinus Torvaldsconfig SND_PCM_OSS
631da177e4SLinus Torvalds	tristate "OSS PCM (digital audio) API"
641da177e4SLinus Torvalds	select SND_OSSEMUL
651da177e4SLinus Torvalds	select SND_PCM
661da177e4SLinus Torvalds	help
671da177e4SLinus Torvalds	  To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
681da177e4SLinus Torvalds	  here and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
691da177e4SLinus Torvalds
701da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
711da177e4SLinus Torvalds
721da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
731da177e4SLinus Torvalds	  will be called snd-pcm-oss.
741da177e4SLinus Torvalds
7521a3479aSJaroslav Kyselaconfig SND_PCM_OSS_PLUGINS
7621a3479aSJaroslav Kysela	bool "OSS PCM (digital audio) API - Include plugin system"
7721a3479aSJaroslav Kysela	depends on SND_PCM_OSS
7821a3479aSJaroslav Kysela        default y
7921a3479aSJaroslav Kysela	help
8021a3479aSJaroslav Kysela          If you disable this option, the ALSA's OSS PCM API will not
8121a3479aSJaroslav Kysela          support conversion of channels, formats and rates. It will
8221a3479aSJaroslav Kysela          behave like most of new OSS/Free drivers in 2.4/2.6 kernels.
8321a3479aSJaroslav Kysela
841da177e4SLinus Torvaldsconfig SND_SEQUENCER_OSS
851da177e4SLinus Torvalds	bool "OSS Sequencer API"
8689fe5117STakashi Iwai	depends on SND_SEQUENCER
871da177e4SLinus Torvalds	select SND_OSSEMUL
881da177e4SLinus Torvalds	help
891da177e4SLinus Torvalds	  Say Y here to enable OSS sequencer emulation (both
901da177e4SLinus Torvalds	  /dev/sequencer and /dev/music interfaces).
911da177e4SLinus Torvalds
921da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
931da177e4SLinus Torvalds
94c2f60c52SFrederik Deweerdt	  If you choose M in "Sequencer support" (SND_SEQUENCER),
95c2f60c52SFrederik Deweerdt	  this will be compiled as a module. The module will be called
96c2f60c52SFrederik Deweerdt	  snd-seq-oss.
971da177e4SLinus Torvalds
981da177e4SLinus Torvaldsconfig SND_RTCTIMER
991da177e4SLinus Torvalds	tristate "RTC Timer support"
10089fe5117STakashi Iwai	depends on RTC
1011da177e4SLinus Torvalds	select SND_TIMER
1021da177e4SLinus Torvalds	help
1031da177e4SLinus Torvalds	  Say Y here to enable RTC timer support for ALSA.  ALSA uses
1041da177e4SLinus Torvalds	  the RTC timer as a precise timing source and maps the RTC
1051da177e4SLinus Torvalds	  timer to ALSA's timer interface.  The ALSA sequencer code also
1061da177e4SLinus Torvalds	  can use this timing source.
1071da177e4SLinus Torvalds
1081da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
1091da177e4SLinus Torvalds	  will be called snd-rtctimer.
1101da177e4SLinus Torvalds
11152948b3fSTakashi Iwai	  Note that this option is exclusive with the new RTC drivers
11252948b3fSTakashi Iwai	  (CONFIG_RTC_CLASS) since this requires the old API.
11352948b3fSTakashi Iwai
114a4f508b2SClemens Ladischconfig SND_SEQ_RTCTIMER_DEFAULT
115a4f508b2SClemens Ladisch	bool "Use RTC as default sequencer timer"
116a4f508b2SClemens Ladisch	depends on SND_RTCTIMER && SND_SEQUENCER
117a4f508b2SClemens Ladisch	default y
118a4f508b2SClemens Ladisch	help
119a4f508b2SClemens Ladisch	  Say Y here to use the RTC timer as the default sequencer
120a4f508b2SClemens Ladisch	  timer.  This is strongly recommended because it ensures
121a4f508b2SClemens Ladisch	  precise MIDI timing even when the system timer runs at less
122a4f508b2SClemens Ladisch	  than 1000 Hz.
123a4f508b2SClemens Ladisch
124a4f508b2SClemens Ladisch	  If in doubt, say Y.
125a4f508b2SClemens Ladisch
126332682b1SClemens Ladischconfig SND_DYNAMIC_MINORS
127b10e5391SClemens Ladisch	bool "Dynamic device file minor numbers"
128332682b1SClemens Ladisch	help
129332682b1SClemens Ladisch	  If you say Y here, the minor numbers of ALSA device files in
130332682b1SClemens Ladisch	  /dev/snd/ are allocated dynamically.  This allows you to have
131332682b1SClemens Ladisch	  more than 8 sound cards, but requires a dynamic device file
132332682b1SClemens Ladisch	  system like udev.
133332682b1SClemens Ladisch
134332682b1SClemens Ladisch	  If you are unsure about this, say N here.
135332682b1SClemens Ladisch
13659d48582STakashi Iwaiconfig SND_SUPPORT_OLD_API
13759d48582STakashi Iwai	bool "Support old ALSA API"
13859d48582STakashi Iwai	default y
13959d48582STakashi Iwai	help
14059d48582STakashi Iwai	  Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
14159d48582STakashi Iwai	  or older).
14259d48582STakashi Iwai
14321a3479aSJaroslav Kyselaconfig SND_VERBOSE_PROCFS
14421a3479aSJaroslav Kysela	bool "Verbose procfs contents"
14589fe5117STakashi Iwai	depends on PROC_FS
14621a3479aSJaroslav Kysela	default y
14721a3479aSJaroslav Kysela	help
14821a3479aSJaroslav Kysela	  Say Y here to include code for verbose procfs contents (provides
149a982ac06SMatt LaPlante          useful information to developers when a problem occurs).  On the
15021a3479aSJaroslav Kysela          other side, it makes the ALSA subsystem larger.
15121a3479aSJaroslav Kysela
1521da177e4SLinus Torvaldsconfig SND_VERBOSE_PRINTK
1531da177e4SLinus Torvalds	bool "Verbose printk"
1541da177e4SLinus Torvalds	help
1551da177e4SLinus Torvalds	  Say Y here to enable verbose log messages.  These messages
1561da177e4SLinus Torvalds	  will help to identify source file and position containing
1571da177e4SLinus Torvalds	  printed messages.
1581da177e4SLinus Torvalds
1591da177e4SLinus Torvalds	  You don't need this unless you're debugging ALSA.
1601da177e4SLinus Torvalds
1611da177e4SLinus Torvaldsconfig SND_DEBUG
1621da177e4SLinus Torvalds	bool "Debug"
1631da177e4SLinus Torvalds	help
1641da177e4SLinus Torvalds	  Say Y here to enable ALSA debug code.
1651da177e4SLinus Torvalds
16662cf872aSTakashi Iwaiconfig SND_DEBUG_VERBOSE
16762cf872aSTakashi Iwai	bool "More verbose debug"
1681da177e4SLinus Torvalds	depends on SND_DEBUG
1691da177e4SLinus Torvalds	help
17062cf872aSTakashi Iwai	  Say Y here to enable extra-verbose debugging messages.
17162cf872aSTakashi Iwai
17262cf872aSTakashi Iwai	  Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
17362cf872aSTakashi Iwai	  So, say Y only if you are ready to be annoyed.
17461fb63c0SJaroslav Kysela
17561fb63c0SJaroslav Kyselaconfig SND_PCM_XRUN_DEBUG
17661fb63c0SJaroslav Kysela	bool "Enable PCM ring buffer overrun/underrun debugging"
17761fb63c0SJaroslav Kysela	default n
178b7d90a35STakashi Iwai	depends on SND_DEBUG && SND_VERBOSE_PROCFS
17961fb63c0SJaroslav Kysela	help
18061fb63c0SJaroslav Kysela	  Say Y to enable the PCM ring buffer overrun/underrun debugging.
18161fb63c0SJaroslav Kysela	  It is usually not required, but if you have trouble with
18261fb63c0SJaroslav Kysela	  sound clicking when system is loaded, it may help to determine
18361fb63c0SJaroslav Kysela	  the process or driver which causes the scheduling gaps.
184e922b002STakashi Iwai
185e922b002STakashi Iwaiconfig SND_VMASTER
186e922b002STakashi Iwai	bool
187