Training courses

Kernel and Embedded Linux

Bootlin training courses

Embedded Linux, kernel,
Yocto Project, Buildroot, real-time,
graphics, boot time, debugging...

Bootlin logo

Elixir Cross Referencer

# SPDX-License-Identifier: GPL-2.0-only
# ALSA soundcard-configuration
config CONFIG_SND_TIMER
	tristate

config CONFIG_SND_PCM
	tristate
	select CONFIG_SND_TIMER if CONFIG_SND_PCM_TIMER

config CONFIG_SND_PCM_ELD
	bool

config CONFIG_SND_PCM_IEC958
	bool

config CONFIG_SND_DMAENGINE_PCM
	tristate

config CONFIG_SND_HWDEP
	tristate

config CONFIG_SND_SEQ_DEVICE
	tristate

config CONFIG_SND_RAWMIDI
	tristate
	select CONFIG_SND_SEQ_DEVICE if CONFIG_SND_SEQUENCER != n

config CONFIG_SND_COMPRESS_OFFLOAD
	tristate

config CONFIG_SND_JACK
	bool

# enable input device support in jack layer
config CONFIG_SND_JACK_INPUT_DEV
	bool
	depends on CONFIG_SND_JACK
	default y if CONFIG_INPUT=y || CONFIG_INPUT=CONFIG_SND

config CONFIG_SND_OSSEMUL
	bool "Enable OSS Emulation"
	select CONFIG_SOUND_OSS_CORE
	help
	  This option enables the build of OSS emulation layer.

config CONFIG_SND_MIXER_OSS
	tristate "OSS Mixer API"
	depends on CONFIG_SND_OSSEMUL
	help
	  To enable OSS mixer API emulation (/dev/mixer*), say Y here
	  and read <file:Documentation/sound/designs/oss-emulation.rst>.

	  Many programs still use the OSS API, so say Y.

	  To compile this driver as a module, choose CONFIG_M here: the module
	  will be called snd-mixer-oss.

config CONFIG_SND_PCM_OSS
	tristate "OSS PCM (digital audio) API"
	depends on CONFIG_SND_OSSEMUL
	select CONFIG_SND_PCM
	help
	  To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
	  here and read <file:Documentation/sound/designs/oss-emulation.rst>.

	  Many programs still use the OSS API, so say Y.

	  To compile this driver as a module, choose CONFIG_M here: the module
	  will be called snd-pcm-oss.

config CONFIG_SND_PCM_OSS_PLUGINS
	bool "OSS PCM (digital audio) API - Include plugin system"
	depends on CONFIG_SND_PCM_OSS
        default y
	help
          If you disable this option, the ALSA's OSS PCM API will not
          support conversion of channels, formats and rates. It will
          behave like most of new OSS/Free drivers in 2.4/2.6 kernels.

config CONFIG_SND_PCM_TIMER
	bool "PCM timer interface" if CONFIG_EXPERT
	default y
	help
	  If you disable this option, pcm timer will be unavailable, so
	  those stubs that use pcm timer (e.g. dmix, dsnoop & co) may work
	  incorrectlly.

	  For some embedded devices, we may disable it to reduce memory
	  footprint, about 20KB on x86_64 platform.

config CONFIG_SND_HRTIMER
	tristate "HR-timer backend support"
	depends on CONFIG_HIGH_RES_TIMERS
	select CONFIG_SND_TIMER
	help
	  Say Y here to enable HR-timer backend for ALSA timer.  ALSA uses
	  the hrtimer as a precise timing source. The ALSA sequencer code
	  also can use this timing source.

	  To compile this driver as a module, choose CONFIG_M here: the module
	  will be called snd-hrtimer.

config CONFIG_SND_DYNAMIC_MINORS
	bool "Dynamic device file minor numbers"
	help
	  If you say Y here, the minor numbers of ALSA device files in
	  /dev/snd/ are allocated dynamically.  This allows you to have
	  more than 8 sound cards, but requires a dynamic device file
	  system like udev.

	  If you are unsure about this, say N here.

config CONFIG_SND_MAX_CARDS
	int "Max number of sound cards"
	range 4 256
	default 32
	depends on CONFIG_SND_DYNAMIC_MINORS
	help
	  Specify the max number of sound cards that can be assigned
	  on a single machine.

config CONFIG_SND_SUPPORT_OLD_API
	bool "Support old ALSA API"
	default y
	help
	  Say Y here to support the obsolete ALSA PCM API (ver.0.9.0 rc3
	  or older).

config CONFIG_SND_PROC_FS
        bool "Sound Proc FS Support" if CONFIG_EXPERT
        depends on CONFIG_PROC_FS
        default y
        help
          Say 'N' to disable Sound proc FS, which may reduce code size about
          9KB on x86_64 platform.
          If unsure say Y.

config CONFIG_SND_VERBOSE_PROCFS
	bool "Verbose procfs contents"
	depends on CONFIG_SND_PROC_FS
	default y
	help
	  Say Y here to include code for verbose procfs contents (provides
          useful information to developers when a problem occurs).  On the
          other side, it makes the ALSA subsystem larger.

config CONFIG_SND_VERBOSE_PRINTK
	bool "Verbose printk"
	help
	  Say Y here to enable verbose log messages.  These messages
	  will help to identify source file and position containing
	  printed messages.

	  You don't need this unless you're debugging ALSA.

config CONFIG_SND_DEBUG
	bool "Debug"
	help
	  Say Y here to enable ALSA debug code.

config CONFIG_SND_DEBUG_VERBOSE
	bool "More verbose debug"
	depends on CONFIG_SND_DEBUG
	help
	  Say Y here to enable extra-verbose debugging messages.
	  
	  Let me repeat: it enables EXTRA-VERBOSE DEBUGGING messages.
	  So, say Y only if you are ready to be annoyed.

config CONFIG_SND_PCM_XRUN_DEBUG
	bool "Enable PCM ring buffer overrun/underrun debugging"
	default n
	depends on CONFIG_SND_DEBUG && CONFIG_SND_VERBOSE_PROCFS
	help
	  Say Y to enable the PCM ring buffer overrun/underrun debugging.
	  It is usually not required, but if you have trouble with
	  sound clicking when system is loaded, it may help to determine
	  the process or driver which causes the scheduling gaps.

config CONFIG_SND_VMASTER
	bool

config CONFIG_SND_DMA_SGBUF
	def_bool y
	depends on CONFIG_X86

source "sound/core/seq/Kconfig"