18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: GPL-2.0-only
28c2ecf20Sopenharmony_cimenuconfig SOUND
38c2ecf20Sopenharmony_ci	tristate "Sound card support"
48c2ecf20Sopenharmony_ci	depends on HAS_IOMEM || UML
58c2ecf20Sopenharmony_ci	help
68c2ecf20Sopenharmony_ci	  If you have a sound card in your computer, i.e. if it can say more
78c2ecf20Sopenharmony_ci	  than an occasional beep, say Y.
88c2ecf20Sopenharmony_ci
98c2ecf20Sopenharmony_ciif SOUND
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ciconfig SOUND_OSS_CORE
128c2ecf20Sopenharmony_ci	bool
138c2ecf20Sopenharmony_ci	default n
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_ciconfig SOUND_OSS_CORE_PRECLAIM
168c2ecf20Sopenharmony_ci	bool "Preclaim OSS device numbers"
178c2ecf20Sopenharmony_ci	depends on SOUND_OSS_CORE
188c2ecf20Sopenharmony_ci	default y
198c2ecf20Sopenharmony_ci	help
208c2ecf20Sopenharmony_ci	  With this option enabled, the kernel will claim all OSS device
218c2ecf20Sopenharmony_ci	  numbers if any OSS support (native or emulation) is enabled
228c2ecf20Sopenharmony_ci	  whether the respective module is loaded or not and try to load the
238c2ecf20Sopenharmony_ci	  appropriate module using sound-slot/service-* and char-major-*
248c2ecf20Sopenharmony_ci	  module aliases when one of the device numbers is opened.  With
258c2ecf20Sopenharmony_ci	  this option disabled, kernel will only claim actually in-use
268c2ecf20Sopenharmony_ci	  device numbers and opening a missing device will generate only the
278c2ecf20Sopenharmony_ci	  standard char-major-* aliases.
288c2ecf20Sopenharmony_ci
298c2ecf20Sopenharmony_ci	  The only visible difference is use of additional module aliases
308c2ecf20Sopenharmony_ci	  and whether OSS sound devices appear multiple times in
318c2ecf20Sopenharmony_ci	  /proc/devices.  sound-slot/service-* module aliases are scheduled
328c2ecf20Sopenharmony_ci	  to be removed (ie. PRECLAIM won't be available) and this option is
338c2ecf20Sopenharmony_ci	  to make the transition easier.  This option can be overridden
348c2ecf20Sopenharmony_ci	  during boot using the kernel parameter soundcore.preclaim_oss.
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci	  Disabling this allows alternative OSS implementations.
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci	  If unsure, say Y.
398c2ecf20Sopenharmony_ci
408c2ecf20Sopenharmony_cisource "sound/oss/dmasound/Kconfig"
418c2ecf20Sopenharmony_ci
428c2ecf20Sopenharmony_ciif !UML
438c2ecf20Sopenharmony_ci
448c2ecf20Sopenharmony_cimenuconfig SND
458c2ecf20Sopenharmony_ci	tristate "Advanced Linux Sound Architecture"
468c2ecf20Sopenharmony_ci	help
478c2ecf20Sopenharmony_ci	  Say 'Y' or 'M' to enable ALSA (Advanced Linux Sound Architecture),
488c2ecf20Sopenharmony_ci	  the new base sound system.
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci	  For more information, see <http://www.alsa-project.org/>
518c2ecf20Sopenharmony_ci
528c2ecf20Sopenharmony_ciif SND
538c2ecf20Sopenharmony_ci
548c2ecf20Sopenharmony_cisource "sound/core/Kconfig"
558c2ecf20Sopenharmony_ci
568c2ecf20Sopenharmony_cisource "sound/drivers/Kconfig"
578c2ecf20Sopenharmony_ci
588c2ecf20Sopenharmony_cisource "sound/isa/Kconfig"
598c2ecf20Sopenharmony_ci
608c2ecf20Sopenharmony_cisource "sound/pci/Kconfig"
618c2ecf20Sopenharmony_ci
628c2ecf20Sopenharmony_cisource "sound/hda/Kconfig"
638c2ecf20Sopenharmony_ci
648c2ecf20Sopenharmony_cisource "sound/ppc/Kconfig"
658c2ecf20Sopenharmony_ci
668c2ecf20Sopenharmony_cisource "sound/ac97/Kconfig"
678c2ecf20Sopenharmony_ci
688c2ecf20Sopenharmony_cisource "sound/aoa/Kconfig"
698c2ecf20Sopenharmony_ci
708c2ecf20Sopenharmony_cisource "sound/arm/Kconfig"
718c2ecf20Sopenharmony_ci
728c2ecf20Sopenharmony_cisource "sound/atmel/Kconfig"
738c2ecf20Sopenharmony_ci
748c2ecf20Sopenharmony_cisource "sound/spi/Kconfig"
758c2ecf20Sopenharmony_ci
768c2ecf20Sopenharmony_cisource "sound/mips/Kconfig"
778c2ecf20Sopenharmony_ci
788c2ecf20Sopenharmony_cisource "sound/sh/Kconfig"
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ci# the following will depend on the order of config.
818c2ecf20Sopenharmony_ci# here assuming USB is defined before ALSA
828c2ecf20Sopenharmony_cisource "sound/usb/Kconfig"
838c2ecf20Sopenharmony_ci
848c2ecf20Sopenharmony_cisource "sound/firewire/Kconfig"
858c2ecf20Sopenharmony_ci
868c2ecf20Sopenharmony_ci# the following will depend on the order of config.
878c2ecf20Sopenharmony_ci# here assuming PCMCIA is defined before ALSA
888c2ecf20Sopenharmony_cisource "sound/pcmcia/Kconfig"
898c2ecf20Sopenharmony_ci
908c2ecf20Sopenharmony_cisource "sound/sparc/Kconfig"
918c2ecf20Sopenharmony_ci
928c2ecf20Sopenharmony_cisource "sound/parisc/Kconfig"
938c2ecf20Sopenharmony_ci
948c2ecf20Sopenharmony_cisource "sound/soc/Kconfig"
958c2ecf20Sopenharmony_ci
968c2ecf20Sopenharmony_cisource "sound/x86/Kconfig"
978c2ecf20Sopenharmony_ci
988c2ecf20Sopenharmony_cisource "sound/synth/Kconfig"
998c2ecf20Sopenharmony_ci
1008c2ecf20Sopenharmony_cisource "sound/xen/Kconfig"
1018c2ecf20Sopenharmony_ci
1028c2ecf20Sopenharmony_ciendif # SND
1038c2ecf20Sopenharmony_ci
1048c2ecf20Sopenharmony_ciendif # !UML
1058c2ecf20Sopenharmony_ci
1068c2ecf20Sopenharmony_ciendif # SOUND
1078c2ecf20Sopenharmony_ci
1088c2ecf20Sopenharmony_ci# AC97_BUS is used from both sound and ucb1400
1098c2ecf20Sopenharmony_ciconfig AC97_BUS
1108c2ecf20Sopenharmony_ci	tristate
1118c2ecf20Sopenharmony_ci	help
1128c2ecf20Sopenharmony_ci	  This is used to avoid config and link hard dependencies between the
1138c2ecf20Sopenharmony_ci	  sound subsystem and other function drivers completely unrelated to
1148c2ecf20Sopenharmony_ci	  sound although they're sharing the AC97 bus. Concerned drivers
1158c2ecf20Sopenharmony_ci	  should "select" this.
116