xref: /openbmc/linux/sound/core/Kconfig (revision 5c845beb)
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
8a9605391SFlorian Fainelli	select GCD
91da177e4SLinus Torvalds
101da177e4SLinus Torvaldsconfig SND_HWDEP
111da177e4SLinus Torvalds	tristate
121da177e4SLinus Torvalds
131da177e4SLinus Torvaldsconfig SND_RAWMIDI
141da177e4SLinus Torvalds	tristate
151da177e4SLinus Torvalds
165c845bebSTakashi Iwaiconfig SND_COMPRESS_OFFLOAD
175c845bebSTakashi Iwai	tristate
185c845bebSTakashi Iwai
190d94e41aSMark Brown# To be effective this also requires INPUT - users should say:
200d94e41aSMark Brown#    select SND_JACK if INPUT=y || INPUT=SND
210d94e41aSMark Brown# to avoid having to force INPUT on.
220d94e41aSMark Brownconfig SND_JACK
230d94e41aSMark Brown	bool
240d94e41aSMark Brown
251da177e4SLinus Torvaldsconfig SND_SEQUENCER
261da177e4SLinus Torvalds	tristate "Sequencer support"
271da177e4SLinus Torvalds	select SND_TIMER
281da177e4SLinus Torvalds	help
291da177e4SLinus Torvalds	  Say Y or M to enable MIDI sequencer and router support.  This
301da177e4SLinus Torvalds	  feature allows routing and enqueueing of MIDI events.  Events
311da177e4SLinus Torvalds	  can be processed at a given time.
321da177e4SLinus Torvalds
331da177e4SLinus Torvalds	  Many programs require this feature, so you should enable it
341da177e4SLinus Torvalds	  unless you know what you're doing.
351da177e4SLinus Torvalds
361da177e4SLinus Torvaldsconfig SND_SEQ_DUMMY
371da177e4SLinus Torvalds	tristate "Sequencer dummy client"
381da177e4SLinus Torvalds	depends on SND_SEQUENCER
391da177e4SLinus Torvalds	help
401da177e4SLinus Torvalds	  Say Y here to enable the dummy sequencer client.  This client
411da177e4SLinus Torvalds	  is a simple MIDI-through client: all normal input events are
421da177e4SLinus Torvalds	  redirected to the output port immediately.
431da177e4SLinus Torvalds
441da177e4SLinus Torvalds	  You don't need this unless you want to connect many MIDI
451da177e4SLinus Torvalds	  devices or applications together.
461da177e4SLinus Torvalds
471da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
481da177e4SLinus Torvalds	  will be called snd-seq-dummy.
491da177e4SLinus Torvalds
501da177e4SLinus Torvaldsconfig SND_OSSEMUL
51d886e87cSTejun Heo	select SOUND_OSS_CORE
521da177e4SLinus Torvalds	bool
531da177e4SLinus Torvalds
541da177e4SLinus Torvaldsconfig SND_MIXER_OSS
551da177e4SLinus Torvalds	tristate "OSS Mixer API"
561da177e4SLinus Torvalds	select SND_OSSEMUL
571da177e4SLinus Torvalds	help
581da177e4SLinus Torvalds	  To enable OSS mixer API emulation (/dev/mixer*), say Y here
591da177e4SLinus Torvalds	  and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
601da177e4SLinus Torvalds
611da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
621da177e4SLinus Torvalds
631da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
641da177e4SLinus Torvalds	  will be called snd-mixer-oss.
651da177e4SLinus Torvalds
661da177e4SLinus Torvaldsconfig SND_PCM_OSS
671da177e4SLinus Torvalds	tristate "OSS PCM (digital audio) API"
681da177e4SLinus Torvalds	select SND_OSSEMUL
691da177e4SLinus Torvalds	select SND_PCM
701da177e4SLinus Torvalds	help
711da177e4SLinus Torvalds	  To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
721da177e4SLinus Torvalds	  here 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-pcm-oss.
781da177e4SLinus Torvalds
7921a3479aSJaroslav Kyselaconfig SND_PCM_OSS_PLUGINS
8021a3479aSJaroslav Kysela	bool "OSS PCM (digital audio) API - Include plugin system"
8121a3479aSJaroslav Kysela	depends on SND_PCM_OSS
8221a3479aSJaroslav Kysela        default y
8321a3479aSJaroslav Kysela	help
8421a3479aSJaroslav Kysela          If you disable this option, the ALSA's OSS PCM API will not
8521a3479aSJaroslav Kysela          support conversion of channels, formats and rates. It will
8621a3479aSJaroslav Kysela          behave like most of new OSS/Free drivers in 2.4/2.6 kernels.
8721a3479aSJaroslav Kysela
881da177e4SLinus Torvaldsconfig SND_SEQUENCER_OSS
891da177e4SLinus Torvalds	bool "OSS Sequencer API"
9089fe5117STakashi Iwai	depends on SND_SEQUENCER
911da177e4SLinus Torvalds	select SND_OSSEMUL
921da177e4SLinus Torvalds	help
931da177e4SLinus Torvalds	  Say Y here to enable OSS sequencer emulation (both
941da177e4SLinus Torvalds	  /dev/sequencer and /dev/music interfaces).
951da177e4SLinus Torvalds
961da177e4SLinus Torvalds	  Many programs still use the OSS API, so say Y.
971da177e4SLinus Torvalds
98c2f60c52SFrederik Deweerdt	  If you choose M in "Sequencer support" (SND_SEQUENCER),
99c2f60c52SFrederik Deweerdt	  this will be compiled as a module. The module will be called
100c2f60c52SFrederik Deweerdt	  snd-seq-oss.
1011da177e4SLinus Torvalds
102bbaf5e97STakashi Iwaiconfig SND_HRTIMER
103bbaf5e97STakashi Iwai	tristate "HR-timer backend support"
104bbaf5e97STakashi Iwai	depends on HIGH_RES_TIMERS
105bbaf5e97STakashi Iwai	select SND_TIMER
106bbaf5e97STakashi Iwai	help
107bbaf5e97STakashi Iwai	  Say Y here to enable HR-timer backend for ALSA timer.  ALSA uses
108bbaf5e97STakashi Iwai	  the hrtimer as a precise timing source. The ALSA sequencer code
109bbaf5e97STakashi Iwai	  also can use this timing source.
110bbaf5e97STakashi Iwai
111bbaf5e97STakashi Iwai	  To compile this driver as a module, choose M here: the module
112bbaf5e97STakashi Iwai	  will be called snd-hrtimer.
113bbaf5e97STakashi Iwai
114bbaf5e97STakashi Iwaiconfig SND_SEQ_HRTIMER_DEFAULT
115bbaf5e97STakashi Iwai	bool "Use HR-timer as default sequencer timer"
116bbaf5e97STakashi Iwai	depends on SND_HRTIMER && SND_SEQUENCER
117bbaf5e97STakashi Iwai	default y
118bbaf5e97STakashi Iwai	help
119bbaf5e97STakashi Iwai	  Say Y here to use the HR-timer backend as the default sequencer
120bbaf5e97STakashi Iwai	  timer.
121bbaf5e97STakashi Iwai
1221da177e4SLinus Torvaldsconfig SND_RTCTIMER
1231da177e4SLinus Torvalds	tristate "RTC Timer support"
12489fe5117STakashi Iwai	depends on RTC
1251da177e4SLinus Torvalds	select SND_TIMER
1261da177e4SLinus Torvalds	help
1271da177e4SLinus Torvalds	  Say Y here to enable RTC timer support for ALSA.  ALSA uses
1281da177e4SLinus Torvalds	  the RTC timer as a precise timing source and maps the RTC
1291da177e4SLinus Torvalds	  timer to ALSA's timer interface.  The ALSA sequencer code also
1301da177e4SLinus Torvalds	  can use this timing source.
1311da177e4SLinus Torvalds
1321da177e4SLinus Torvalds	  To compile this driver as a module, choose M here: the module
1331da177e4SLinus Torvalds	  will be called snd-rtctimer.
1341da177e4SLinus Torvalds
13552948b3fSTakashi Iwai	  Note that this option is exclusive with the new RTC drivers
13652948b3fSTakashi Iwai	  (CONFIG_RTC_CLASS) since this requires the old API.
13752948b3fSTakashi Iwai
138a4f508b2SClemens Ladischconfig SND_SEQ_RTCTIMER_DEFAULT
139a4f508b2SClemens Ladisch	bool "Use RTC as default sequencer timer"
140a4f508b2SClemens Ladisch	depends on SND_RTCTIMER && SND_SEQUENCER
141e78a37bcSTakashi Iwai	depends on !SND_SEQ_HRTIMER_DEFAULT
142a4f508b2SClemens Ladisch	default y
143a4f508b2SClemens Ladisch	help
144a4f508b2SClemens Ladisch	  Say Y here to use the RTC timer as the default sequencer
145a4f508b2SClemens Ladisch	  timer.  This is strongly recommended because it ensures
146a4f508b2SClemens Ladisch	  precise MIDI timing even when the system timer runs at less
147a4f508b2SClemens Ladisch	  than 1000 Hz.
148a4f508b2SClemens Ladisch
149a4f508b2SClemens Ladisch	  If in doubt, say Y.
150a4f508b2SClemens Ladisch
151332682b1SClemens Ladischconfig SND_DYNAMIC_MINORS
152b10e5391SClemens Ladisch	bool "Dynamic device file minor numbers"
153332682b1SClemens Ladisch	help
154332682b1SClemens Ladisch	  If you say Y here, the minor numbers of ALSA device files in
155332682b1SClemens Ladisch	  /dev/snd/ are allocated dynamically.  This allows you to have
156332682b1SClemens Ladisch	  more than 8 sound cards, but requires a dynamic device file
157332682b1SClemens Ladisch	  system like udev.
158332682b1SClemens Ladisch
159332682b1SClemens Ladisch	  If you are unsure about this, say N here.
160332682b1SClemens Ladisch
16159d48582STakashi Iwaiconfig SND_SUPPORT_OLD_API
16259d48582STakashi Iwai	bool "Support old ALSA API"
16359d48582STakashi Iwai	default y
16459d48582STakashi Iwai	help
16559d48582STakashi Iwai	  Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
16659d48582STakashi Iwai	  or older).
16759d48582STakashi Iwai
16821a3479aSJaroslav Kyselaconfig SND_VERBOSE_PROCFS
16921a3479aSJaroslav Kysela	bool "Verbose procfs contents"
17089fe5117STakashi Iwai	depends on PROC_FS
17121a3479aSJaroslav Kysela	default y
17221a3479aSJaroslav Kysela	help
17321a3479aSJaroslav Kysela	  Say Y here to include code for verbose procfs contents (provides
174a982ac06SMatt LaPlante          useful information to developers when a problem occurs).  On the
17521a3479aSJaroslav Kysela          other side, it makes the ALSA subsystem larger.
17621a3479aSJaroslav Kysela
1771da177e4SLinus Torvaldsconfig SND_VERBOSE_PRINTK
1781da177e4SLinus Torvalds	bool "Verbose printk"
1791da177e4SLinus Torvalds	help
1801da177e4SLinus Torvalds	  Say Y here to enable verbose log messages.  These messages
1811da177e4SLinus Torvalds	  will help to identify source file and position containing
1821da177e4SLinus Torvalds	  printed messages.
1831da177e4SLinus Torvalds
1841da177e4SLinus Torvalds	  You don't need this unless you're debugging ALSA.
1851da177e4SLinus Torvalds
1861da177e4SLinus Torvaldsconfig SND_DEBUG
1871da177e4SLinus Torvalds	bool "Debug"
1881da177e4SLinus Torvalds	help
1891da177e4SLinus Torvalds	  Say Y here to enable ALSA debug code.
1901da177e4SLinus Torvalds
19162cf872aSTakashi Iwaiconfig SND_DEBUG_VERBOSE
19262cf872aSTakashi Iwai	bool "More verbose debug"
1931da177e4SLinus Torvalds	depends on SND_DEBUG
1941da177e4SLinus Torvalds	help
19562cf872aSTakashi Iwai	  Say Y here to enable extra-verbose debugging messages.
19662cf872aSTakashi Iwai
19762cf872aSTakashi Iwai	  Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
19862cf872aSTakashi Iwai	  So, say Y only if you are ready to be annoyed.
19961fb63c0SJaroslav Kysela
20061fb63c0SJaroslav Kyselaconfig SND_PCM_XRUN_DEBUG
20161fb63c0SJaroslav Kysela	bool "Enable PCM ring buffer overrun/underrun debugging"
20261fb63c0SJaroslav Kysela	default n
203b7d90a35STakashi Iwai	depends on SND_DEBUG && SND_VERBOSE_PROCFS
20461fb63c0SJaroslav Kysela	help
20561fb63c0SJaroslav Kysela	  Say Y to enable the PCM ring buffer overrun/underrun debugging.
20661fb63c0SJaroslav Kysela	  It is usually not required, but if you have trouble with
20761fb63c0SJaroslav Kysela	  sound clicking when system is loaded, it may help to determine
20861fb63c0SJaroslav Kysela	  the process or driver which causes the scheduling gaps.
209e922b002STakashi Iwai
210e922b002STakashi Iwaiconfig SND_VMASTER
211e922b002STakashi Iwai	bool
2120528c749SMichal Marek
21335be544aSTakashi Iwaiconfig SND_KCTL_JACK
21435be544aSTakashi Iwai	bool
21535be544aSTakashi Iwai
216cc6a8acdSTakashi Iwaiconfig SND_DMA_SGBUF
217cc6a8acdSTakashi Iwai	def_bool y
218cc6a8acdSTakashi Iwai	depends on X86
219cc6a8acdSTakashi Iwai
2200528c749SMichal Mareksource "sound/core/seq/Kconfig"
221