xref: /openbmc/linux/sound/core/Kconfig (revision eb3b705a)
11da177e4SLinus Torvalds# ALSA soundcard-configuration
21da177e4SLinus Torvaldsconfig SND_TIMER
31da177e4SLinus Torvalds	tristate
41da177e4SLinus Torvalds
51da177e4SLinus Torvaldsconfig SND_PCM
61da177e4SLinus Torvalds	tristate
790bbaf66SJie Yang	select SND_TIMER if SND_PCM_TIMER
81da177e4SLinus Torvalds
9838d1631SRussell Kingconfig SND_PCM_ELD
10838d1631SRussell King	bool
11838d1631SRussell King
129203dd01SRussell Kingconfig SND_PCM_IEC958
139203dd01SRussell King	bool
149203dd01SRussell King
15b7ae6f31SDaniel Mackconfig SND_DMAENGINE_PCM
16903eb318SDaniel Mack	tristate
17b7ae6f31SDaniel Mack
181da177e4SLinus Torvaldsconfig SND_HWDEP
191da177e4SLinus Torvalds	tristate
201da177e4SLinus Torvalds
211da177e4SLinus Torvaldsconfig SND_RAWMIDI
221da177e4SLinus Torvalds	tristate
231da177e4SLinus Torvalds
245c845bebSTakashi Iwaiconfig SND_COMPRESS_OFFLOAD
255c845bebSTakashi Iwai	tristate
265c845bebSTakashi Iwai
270d94e41aSMark Brownconfig SND_JACK
280d94e41aSMark Brown	bool
290d94e41aSMark Brown
30fe0d128cSTakashi Iwai# enable input device support in jack layer
31fe0d128cSTakashi Iwaiconfig SND_JACK_INPUT_DEV
32fe0d128cSTakashi Iwai	bool
33fe0d128cSTakashi Iwai	depends on SND_JACK
34fe0d128cSTakashi Iwai	default y if INPUT=y || INPUT=SND
35fe0d128cSTakashi Iwai
361da177e4SLinus Torvaldsconfig SND_SEQUENCER
371da177e4SLinus Torvalds	tristate "Sequencer support"
381da177e4SLinus Torvalds	select SND_TIMER
391da177e4SLinus Torvalds	help
401da177e4SLinus Torvalds	  Say Y or M to enable MIDI sequencer and router support.  This
411da177e4SLinus Torvalds	  feature allows routing and enqueueing of MIDI events.  Events
421da177e4SLinus Torvalds	  can be processed at a given time.
431da177e4SLinus Torvalds
441da177e4SLinus Torvalds	  Many programs require this feature, so you should enable it
451da177e4SLinus Torvalds	  unless you know what you're doing.
461da177e4SLinus Torvalds
471da177e4SLinus Torvaldsconfig SND_SEQ_DUMMY
481da177e4SLinus Torvalds	tristate "Sequencer dummy client"
491da177e4SLinus Torvalds	depends on SND_SEQUENCER
501da177e4SLinus Torvalds	help
511da177e4SLinus Torvalds	  Say Y here to enable the dummy sequencer client.  This client
521da177e4SLinus Torvalds	  is a simple MIDI-through client: all normal input events are
531da177e4SLinus Torvalds	  redirected to the output port immediately.
541da177e4SLinus Torvalds
551da177e4SLinus Torvalds	  You don't need this unless you want to connect many MIDI
561da177e4SLinus Torvalds	  devices or applications together.
571da177e4SLinus Torvalds
581da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
591da177e4SLinus Torvalds	  will be called snd-seq-dummy.
601da177e4SLinus Torvalds
611da177e4SLinus Torvaldsconfig SND_OSSEMUL
62eb3b705aSTakashi Iwai	bool "Enable OSS Emulation"
63d886e87cSTejun Heo	select SOUND_OSS_CORE
64eb3b705aSTakashi Iwai	help
65eb3b705aSTakashi Iwai	  This option enables the build of OSS emulation layer.
661da177e4SLinus Torvalds
671da177e4SLinus Torvaldsconfig SND_MIXER_OSS
681da177e4SLinus Torvalds	tristate "OSS Mixer API"
69eb3b705aSTakashi Iwai	depends on SND_OSSEMUL
701da177e4SLinus Torvalds	help
711da177e4SLinus Torvalds	  To enable OSS mixer API emulation (/dev/mixer*), say Y here
721da177e4SLinus Torvalds	  and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
731da177e4SLinus Torvalds
741da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
751da177e4SLinus Torvalds
761da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
771da177e4SLinus Torvalds	  will be called snd-mixer-oss.
781da177e4SLinus Torvalds
791da177e4SLinus Torvaldsconfig SND_PCM_OSS
801da177e4SLinus Torvalds	tristate "OSS PCM (digital audio) API"
81eb3b705aSTakashi Iwai	depends on SND_OSSEMUL
821da177e4SLinus Torvalds	select SND_PCM
831da177e4SLinus Torvalds	help
841da177e4SLinus Torvalds	  To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
851da177e4SLinus Torvalds	  here and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
861da177e4SLinus Torvalds
871da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
881da177e4SLinus Torvalds
891da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
901da177e4SLinus Torvalds	  will be called snd-pcm-oss.
911da177e4SLinus Torvalds
9221a3479aSJaroslav Kyselaconfig SND_PCM_OSS_PLUGINS
9321a3479aSJaroslav Kysela	bool "OSS PCM (digital audio) API - Include plugin system"
9421a3479aSJaroslav Kysela	depends on SND_PCM_OSS
9521a3479aSJaroslav Kysela        default y
9621a3479aSJaroslav Kysela	help
9721a3479aSJaroslav Kysela          If you disable this option, the ALSA's OSS PCM API will not
9821a3479aSJaroslav Kysela          support conversion of channels, formats and rates. It will
9921a3479aSJaroslav Kysela          behave like most of new OSS/Free drivers in 2.4/2.6 kernels.
10021a3479aSJaroslav Kysela
10190bbaf66SJie Yangconfig SND_PCM_TIMER
10290bbaf66SJie Yang	bool "PCM timer interface" if EXPERT
10390bbaf66SJie Yang	default y
10490bbaf66SJie Yang	help
105ac1efcfbSRandy Dunlap	  If you disable this option, pcm timer will be unavailable, so
106ac1efcfbSRandy Dunlap	  those stubs that use pcm timer (e.g. dmix, dsnoop & co) may work
10790bbaf66SJie Yang	  incorrectlly.
10890bbaf66SJie Yang
109ac1efcfbSRandy Dunlap	  For some embedded devices, we may disable it to reduce memory
11090bbaf66SJie Yang	  footprint, about 20KB on x86_64 platform.
11190bbaf66SJie Yang
1121da177e4SLinus Torvaldsconfig SND_SEQUENCER_OSS
1131da177e4SLinus Torvalds	bool "OSS Sequencer API"
11489fe5117STakashi Iwai	depends on SND_SEQUENCER
115eb3b705aSTakashi Iwai	depends on SND_OSSEMUL
1161da177e4SLinus Torvalds	help
1171da177e4SLinus Torvalds	  Say Y here to enable OSS sequencer emulation (both
1181da177e4SLinus Torvalds	  /dev/sequencer and /dev/music interfaces).
1191da177e4SLinus Torvalds
1201da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
1211da177e4SLinus Torvalds
122c2f60c52SFrederik Deweerdt	  If you choose M in "Sequencer support" (SND_SEQUENCER),
123c2f60c52SFrederik Deweerdt	  this will be compiled as a module. The module will be called
124c2f60c52SFrederik Deweerdt	  snd-seq-oss.
1251da177e4SLinus Torvalds
126bbaf5e97STakashi Iwaiconfig SND_HRTIMER
127bbaf5e97STakashi Iwai	tristate "HR-timer backend support"
128bbaf5e97STakashi Iwai	depends on HIGH_RES_TIMERS
129bbaf5e97STakashi Iwai	select SND_TIMER
130bbaf5e97STakashi Iwai	help
131bbaf5e97STakashi Iwai	  Say Y here to enable HR-timer backend for ALSA timer.  ALSA uses
132bbaf5e97STakashi Iwai	  the hrtimer as a precise timing source. The ALSA sequencer code
133bbaf5e97STakashi Iwai	  also can use this timing source.
134bbaf5e97STakashi Iwai
135bbaf5e97STakashi Iwai	  To compile this driver as a module, choose M here: the module
136bbaf5e97STakashi Iwai	  will be called snd-hrtimer.
137bbaf5e97STakashi Iwai
138bbaf5e97STakashi Iwaiconfig SND_SEQ_HRTIMER_DEFAULT
139bbaf5e97STakashi Iwai	bool "Use HR-timer as default sequencer timer"
140bbaf5e97STakashi Iwai	depends on SND_HRTIMER && SND_SEQUENCER
141bbaf5e97STakashi Iwai	default y
142bbaf5e97STakashi Iwai	help
143bbaf5e97STakashi Iwai	  Say Y here to use the HR-timer backend as the default sequencer
144bbaf5e97STakashi Iwai	  timer.
145bbaf5e97STakashi Iwai
146332682b1SClemens Ladischconfig SND_DYNAMIC_MINORS
147b10e5391SClemens Ladisch	bool "Dynamic device file minor numbers"
148332682b1SClemens Ladisch	help
149332682b1SClemens Ladisch	  If you say Y here, the minor numbers of ALSA device files in
150332682b1SClemens Ladisch	  /dev/snd/ are allocated dynamically.  This allows you to have
151332682b1SClemens Ladisch	  more than 8 sound cards, but requires a dynamic device file
152332682b1SClemens Ladisch	  system like udev.
153332682b1SClemens Ladisch
154332682b1SClemens Ladisch	  If you are unsure about this, say N here.
155332682b1SClemens Ladisch
1567bb2491bSTakashi Iwaiconfig SND_MAX_CARDS
1577bb2491bSTakashi Iwai	int "Max number of sound cards"
1587bb2491bSTakashi Iwai	range 4 256
1597bb2491bSTakashi Iwai	default 32
1607bb2491bSTakashi Iwai	depends on SND_DYNAMIC_MINORS
1617bb2491bSTakashi Iwai	help
1627bb2491bSTakashi Iwai	  Specify the max number of sound cards that can be assigned
1637bb2491bSTakashi Iwai	  on a single machine.
1647bb2491bSTakashi Iwai
16559d48582STakashi Iwaiconfig SND_SUPPORT_OLD_API
16659d48582STakashi Iwai	bool "Support old ALSA API"
16759d48582STakashi Iwai	default y
16859d48582STakashi Iwai	help
16959d48582STakashi Iwai	  Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
17059d48582STakashi Iwai	  or older).
17159d48582STakashi Iwai
172e0ecb05aSJie Yangconfig SND_PROC_FS
173e0ecb05aSJie Yang        bool "Sound Proc FS Support" if EXPERT
174e0ecb05aSJie Yang        depends on PROC_FS
175e0ecb05aSJie Yang        default y
176e0ecb05aSJie Yang        help
177e0ecb05aSJie Yang          Say 'N' to disable Sound proc FS, which may reduce code size about
178e0ecb05aSJie Yang          9KB on x86_64 platform.
179e0ecb05aSJie Yang          If unsure say Y.
180e0ecb05aSJie Yang
18121a3479aSJaroslav Kyselaconfig SND_VERBOSE_PROCFS
18221a3479aSJaroslav Kysela	bool "Verbose procfs contents"
183e0ecb05aSJie Yang	depends on SND_PROC_FS
18421a3479aSJaroslav Kysela	default y
18521a3479aSJaroslav Kysela	help
18621a3479aSJaroslav Kysela	  Say Y here to include code for verbose procfs contents (provides
187a982ac06SMatt LaPlante          useful information to developers when a problem occurs).  On the
18821a3479aSJaroslav Kysela          other side, it makes the ALSA subsystem larger.
18921a3479aSJaroslav Kysela
1901da177e4SLinus Torvaldsconfig SND_VERBOSE_PRINTK
1911da177e4SLinus Torvalds	bool "Verbose printk"
1921da177e4SLinus Torvalds	help
1931da177e4SLinus Torvalds	  Say Y here to enable verbose log messages.  These messages
1941da177e4SLinus Torvalds	  will help to identify source file and position containing
1951da177e4SLinus Torvalds	  printed messages.
1961da177e4SLinus Torvalds
1971da177e4SLinus Torvalds	  You don't need this unless you're debugging ALSA.
1981da177e4SLinus Torvalds
1991da177e4SLinus Torvaldsconfig SND_DEBUG
2001da177e4SLinus Torvalds	bool "Debug"
2011da177e4SLinus Torvalds	help
2021da177e4SLinus Torvalds	  Say Y here to enable ALSA debug code.
2031da177e4SLinus Torvalds
20462cf872aSTakashi Iwaiconfig SND_DEBUG_VERBOSE
20562cf872aSTakashi Iwai	bool "More verbose debug"
2061da177e4SLinus Torvalds	depends on SND_DEBUG
2071da177e4SLinus Torvalds	help
20862cf872aSTakashi Iwai	  Say Y here to enable extra-verbose debugging messages.
20962cf872aSTakashi Iwai
21062cf872aSTakashi Iwai	  Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
21162cf872aSTakashi Iwai	  So, say Y only if you are ready to be annoyed.
21261fb63c0SJaroslav Kysela
21361fb63c0SJaroslav Kyselaconfig SND_PCM_XRUN_DEBUG
21461fb63c0SJaroslav Kysela	bool "Enable PCM ring buffer overrun/underrun debugging"
21561fb63c0SJaroslav Kysela	default n
216b7d90a35STakashi Iwai	depends on SND_DEBUG && SND_VERBOSE_PROCFS
21761fb63c0SJaroslav Kysela	help
21861fb63c0SJaroslav Kysela	  Say Y to enable the PCM ring buffer overrun/underrun debugging.
21961fb63c0SJaroslav Kysela	  It is usually not required, but if you have trouble with
22061fb63c0SJaroslav Kysela	  sound clicking when system is loaded, it may help to determine
22161fb63c0SJaroslav Kysela	  the process or driver which causes the scheduling gaps.
222e922b002STakashi Iwai
223e922b002STakashi Iwaiconfig SND_VMASTER
224e922b002STakashi Iwai	bool
2250528c749SMichal Marek
226cc6a8acdSTakashi Iwaiconfig SND_DMA_SGBUF
227cc6a8acdSTakashi Iwai	def_bool y
228cc6a8acdSTakashi Iwai	depends on X86
229cc6a8acdSTakashi Iwai
2300528c749SMichal Mareksource "sound/core/seq/Kconfig"
231