xref: /openbmc/linux/sound/core/Kconfig (revision 838d1631)
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
9838d1631SRussell Kingconfig SND_PCM_ELD
10838d1631SRussell King	bool
11838d1631SRussell King
12b7ae6f31SDaniel Mackconfig SND_DMAENGINE_PCM
13903eb318SDaniel Mack	tristate
14b7ae6f31SDaniel Mack
151da177e4SLinus Torvaldsconfig SND_HWDEP
161da177e4SLinus Torvalds	tristate
171da177e4SLinus Torvalds
181da177e4SLinus Torvaldsconfig SND_RAWMIDI
191da177e4SLinus Torvalds	tristate
201da177e4SLinus Torvalds
215c845bebSTakashi Iwaiconfig SND_COMPRESS_OFFLOAD
225c845bebSTakashi Iwai	tristate
235c845bebSTakashi Iwai
240d94e41aSMark Brown# To be effective this also requires INPUT - users should say:
250d94e41aSMark Brown#    select SND_JACK if INPUT=y || INPUT=SND
260d94e41aSMark Brown# to avoid having to force INPUT on.
270d94e41aSMark Brownconfig SND_JACK
280d94e41aSMark Brown	bool
290d94e41aSMark Brown
301da177e4SLinus Torvaldsconfig SND_SEQUENCER
311da177e4SLinus Torvalds	tristate "Sequencer support"
321da177e4SLinus Torvalds	select SND_TIMER
331da177e4SLinus Torvalds	help
341da177e4SLinus Torvalds	  Say Y or M to enable MIDI sequencer and router support.  This
351da177e4SLinus Torvalds	  feature allows routing and enqueueing of MIDI events.  Events
361da177e4SLinus Torvalds	  can be processed at a given time.
371da177e4SLinus Torvalds
381da177e4SLinus Torvalds	  Many programs require this feature, so you should enable it
391da177e4SLinus Torvalds	  unless you know what you're doing.
401da177e4SLinus Torvalds
411da177e4SLinus Torvaldsconfig SND_SEQ_DUMMY
421da177e4SLinus Torvalds	tristate "Sequencer dummy client"
431da177e4SLinus Torvalds	depends on SND_SEQUENCER
441da177e4SLinus Torvalds	help
451da177e4SLinus Torvalds	  Say Y here to enable the dummy sequencer client.  This client
461da177e4SLinus Torvalds	  is a simple MIDI-through client: all normal input events are
471da177e4SLinus Torvalds	  redirected to the output port immediately.
481da177e4SLinus Torvalds
491da177e4SLinus Torvalds	  You don't need this unless you want to connect many MIDI
501da177e4SLinus Torvalds	  devices or applications together.
511da177e4SLinus Torvalds
521da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
531da177e4SLinus Torvalds	  will be called snd-seq-dummy.
541da177e4SLinus Torvalds
551da177e4SLinus Torvaldsconfig SND_OSSEMUL
56d886e87cSTejun Heo	select SOUND_OSS_CORE
571da177e4SLinus Torvalds	bool
581da177e4SLinus Torvalds
591da177e4SLinus Torvaldsconfig SND_MIXER_OSS
601da177e4SLinus Torvalds	tristate "OSS Mixer API"
611da177e4SLinus Torvalds	select SND_OSSEMUL
621da177e4SLinus Torvalds	help
631da177e4SLinus Torvalds	  To enable OSS mixer API emulation (/dev/mixer*), say Y here
641da177e4SLinus Torvalds	  and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
651da177e4SLinus Torvalds
661da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
671da177e4SLinus Torvalds
681da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
691da177e4SLinus Torvalds	  will be called snd-mixer-oss.
701da177e4SLinus Torvalds
711da177e4SLinus Torvaldsconfig SND_PCM_OSS
721da177e4SLinus Torvalds	tristate "OSS PCM (digital audio) API"
731da177e4SLinus Torvalds	select SND_OSSEMUL
741da177e4SLinus Torvalds	select SND_PCM
751da177e4SLinus Torvalds	help
761da177e4SLinus Torvalds	  To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
771da177e4SLinus Torvalds	  here and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
781da177e4SLinus Torvalds
791da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
801da177e4SLinus Torvalds
811da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
821da177e4SLinus Torvalds	  will be called snd-pcm-oss.
831da177e4SLinus Torvalds
8421a3479aSJaroslav Kyselaconfig SND_PCM_OSS_PLUGINS
8521a3479aSJaroslav Kysela	bool "OSS PCM (digital audio) API - Include plugin system"
8621a3479aSJaroslav Kysela	depends on SND_PCM_OSS
8721a3479aSJaroslav Kysela        default y
8821a3479aSJaroslav Kysela	help
8921a3479aSJaroslav Kysela          If you disable this option, the ALSA's OSS PCM API will not
9021a3479aSJaroslav Kysela          support conversion of channels, formats and rates. It will
9121a3479aSJaroslav Kysela          behave like most of new OSS/Free drivers in 2.4/2.6 kernels.
9221a3479aSJaroslav Kysela
931da177e4SLinus Torvaldsconfig SND_SEQUENCER_OSS
941da177e4SLinus Torvalds	bool "OSS Sequencer API"
9589fe5117STakashi Iwai	depends on SND_SEQUENCER
961da177e4SLinus Torvalds	select SND_OSSEMUL
971da177e4SLinus Torvalds	help
981da177e4SLinus Torvalds	  Say Y here to enable OSS sequencer emulation (both
991da177e4SLinus Torvalds	  /dev/sequencer and /dev/music interfaces).
1001da177e4SLinus Torvalds
1011da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
1021da177e4SLinus Torvalds
103c2f60c52SFrederik Deweerdt	  If you choose M in "Sequencer support" (SND_SEQUENCER),
104c2f60c52SFrederik Deweerdt	  this will be compiled as a module. The module will be called
105c2f60c52SFrederik Deweerdt	  snd-seq-oss.
1061da177e4SLinus Torvalds
107bbaf5e97STakashi Iwaiconfig SND_HRTIMER
108bbaf5e97STakashi Iwai	tristate "HR-timer backend support"
109bbaf5e97STakashi Iwai	depends on HIGH_RES_TIMERS
110bbaf5e97STakashi Iwai	select SND_TIMER
111bbaf5e97STakashi Iwai	help
112bbaf5e97STakashi Iwai	  Say Y here to enable HR-timer backend for ALSA timer.  ALSA uses
113bbaf5e97STakashi Iwai	  the hrtimer as a precise timing source. The ALSA sequencer code
114bbaf5e97STakashi Iwai	  also can use this timing source.
115bbaf5e97STakashi Iwai
116bbaf5e97STakashi Iwai	  To compile this driver as a module, choose M here: the module
117bbaf5e97STakashi Iwai	  will be called snd-hrtimer.
118bbaf5e97STakashi Iwai
119bbaf5e97STakashi Iwaiconfig SND_SEQ_HRTIMER_DEFAULT
120bbaf5e97STakashi Iwai	bool "Use HR-timer as default sequencer timer"
121bbaf5e97STakashi Iwai	depends on SND_HRTIMER && SND_SEQUENCER
122bbaf5e97STakashi Iwai	default y
123bbaf5e97STakashi Iwai	help
124bbaf5e97STakashi Iwai	  Say Y here to use the HR-timer backend as the default sequencer
125bbaf5e97STakashi Iwai	  timer.
126bbaf5e97STakashi Iwai
1271da177e4SLinus Torvaldsconfig SND_RTCTIMER
1281da177e4SLinus Torvalds	tristate "RTC Timer support"
12989fe5117STakashi Iwai	depends on RTC
1301da177e4SLinus Torvalds	select SND_TIMER
1311da177e4SLinus Torvalds	help
1321da177e4SLinus Torvalds	  Say Y here to enable RTC timer support for ALSA.  ALSA uses
1331da177e4SLinus Torvalds	  the RTC timer as a precise timing source and maps the RTC
1341da177e4SLinus Torvalds	  timer to ALSA's timer interface.  The ALSA sequencer code also
1351da177e4SLinus Torvalds	  can use this timing source.
1361da177e4SLinus Torvalds
1371da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
1381da177e4SLinus Torvalds	  will be called snd-rtctimer.
1391da177e4SLinus Torvalds
14052948b3fSTakashi Iwai	  Note that this option is exclusive with the new RTC drivers
14152948b3fSTakashi Iwai	  (CONFIG_RTC_CLASS) since this requires the old API.
14252948b3fSTakashi Iwai
143a4f508b2SClemens Ladischconfig SND_SEQ_RTCTIMER_DEFAULT
144a4f508b2SClemens Ladisch	bool "Use RTC as default sequencer timer"
145a4f508b2SClemens Ladisch	depends on SND_RTCTIMER && SND_SEQUENCER
146e78a37bcSTakashi Iwai	depends on !SND_SEQ_HRTIMER_DEFAULT
147a4f508b2SClemens Ladisch	default y
148a4f508b2SClemens Ladisch	help
149a4f508b2SClemens Ladisch	  Say Y here to use the RTC timer as the default sequencer
150a4f508b2SClemens Ladisch	  timer.  This is strongly recommended because it ensures
151a4f508b2SClemens Ladisch	  precise MIDI timing even when the system timer runs at less
152a4f508b2SClemens Ladisch	  than 1000 Hz.
153a4f508b2SClemens Ladisch
154a4f508b2SClemens Ladisch	  If in doubt, say Y.
155a4f508b2SClemens Ladisch
156332682b1SClemens Ladischconfig SND_DYNAMIC_MINORS
157b10e5391SClemens Ladisch	bool "Dynamic device file minor numbers"
158332682b1SClemens Ladisch	help
159332682b1SClemens Ladisch	  If you say Y here, the minor numbers of ALSA device files in
160332682b1SClemens Ladisch	  /dev/snd/ are allocated dynamically.  This allows you to have
161332682b1SClemens Ladisch	  more than 8 sound cards, but requires a dynamic device file
162332682b1SClemens Ladisch	  system like udev.
163332682b1SClemens Ladisch
164332682b1SClemens Ladisch	  If you are unsure about this, say N here.
165332682b1SClemens Ladisch
1667bb2491bSTakashi Iwaiconfig SND_MAX_CARDS
1677bb2491bSTakashi Iwai	int "Max number of sound cards"
1687bb2491bSTakashi Iwai	range 4 256
1697bb2491bSTakashi Iwai	default 32
1707bb2491bSTakashi Iwai	depends on SND_DYNAMIC_MINORS
1717bb2491bSTakashi Iwai	help
1727bb2491bSTakashi Iwai	  Specify the max number of sound cards that can be assigned
1737bb2491bSTakashi Iwai	  on a single machine.
1747bb2491bSTakashi Iwai
17559d48582STakashi Iwaiconfig SND_SUPPORT_OLD_API
17659d48582STakashi Iwai	bool "Support old ALSA API"
17759d48582STakashi Iwai	default y
17859d48582STakashi Iwai	help
17959d48582STakashi Iwai	  Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
18059d48582STakashi Iwai	  or older).
18159d48582STakashi Iwai
18221a3479aSJaroslav Kyselaconfig SND_VERBOSE_PROCFS
18321a3479aSJaroslav Kysela	bool "Verbose procfs contents"
18489fe5117STakashi Iwai	depends on PROC_FS
18521a3479aSJaroslav Kysela	default y
18621a3479aSJaroslav Kysela	help
18721a3479aSJaroslav Kysela	  Say Y here to include code for verbose procfs contents (provides
188a982ac06SMatt LaPlante          useful information to developers when a problem occurs).  On the
18921a3479aSJaroslav Kysela          other side, it makes the ALSA subsystem larger.
19021a3479aSJaroslav Kysela
1911da177e4SLinus Torvaldsconfig SND_VERBOSE_PRINTK
1921da177e4SLinus Torvalds	bool "Verbose printk"
1931da177e4SLinus Torvalds	help
1941da177e4SLinus Torvalds	  Say Y here to enable verbose log messages.  These messages
1951da177e4SLinus Torvalds	  will help to identify source file and position containing
1961da177e4SLinus Torvalds	  printed messages.
1971da177e4SLinus Torvalds
1981da177e4SLinus Torvalds	  You don't need this unless you're debugging ALSA.
1991da177e4SLinus Torvalds
2001da177e4SLinus Torvaldsconfig SND_DEBUG
2011da177e4SLinus Torvalds	bool "Debug"
2021da177e4SLinus Torvalds	help
2031da177e4SLinus Torvalds	  Say Y here to enable ALSA debug code.
2041da177e4SLinus Torvalds
20562cf872aSTakashi Iwaiconfig SND_DEBUG_VERBOSE
20662cf872aSTakashi Iwai	bool "More verbose debug"
2071da177e4SLinus Torvalds	depends on SND_DEBUG
2081da177e4SLinus Torvalds	help
20962cf872aSTakashi Iwai	  Say Y here to enable extra-verbose debugging messages.
21062cf872aSTakashi Iwai
21162cf872aSTakashi Iwai	  Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
21262cf872aSTakashi Iwai	  So, say Y only if you are ready to be annoyed.
21361fb63c0SJaroslav Kysela
21461fb63c0SJaroslav Kyselaconfig SND_PCM_XRUN_DEBUG
21561fb63c0SJaroslav Kysela	bool "Enable PCM ring buffer overrun/underrun debugging"
21661fb63c0SJaroslav Kysela	default n
217b7d90a35STakashi Iwai	depends on SND_DEBUG && SND_VERBOSE_PROCFS
21861fb63c0SJaroslav Kysela	help
21961fb63c0SJaroslav Kysela	  Say Y to enable the PCM ring buffer overrun/underrun debugging.
22061fb63c0SJaroslav Kysela	  It is usually not required, but if you have trouble with
22161fb63c0SJaroslav Kysela	  sound clicking when system is loaded, it may help to determine
22261fb63c0SJaroslav Kysela	  the process or driver which causes the scheduling gaps.
223e922b002STakashi Iwai
224e922b002STakashi Iwaiconfig SND_VMASTER
225e922b002STakashi Iwai	bool
2260528c749SMichal Marek
22735be544aSTakashi Iwaiconfig SND_KCTL_JACK
22835be544aSTakashi Iwai	bool
22935be544aSTakashi Iwai
230cc6a8acdSTakashi Iwaiconfig SND_DMA_SGBUF
231cc6a8acdSTakashi Iwai	def_bool y
232cc6a8acdSTakashi Iwai	depends on X86
233cc6a8acdSTakashi Iwai
2340528c749SMichal Mareksource "sound/core/seq/Kconfig"
235