e0f2d85ea3
[ Upstream commit db4bfcba7bb8d10f00bba2a3da6b9a9c2a1d7b71 ] Use "select" to ensure that the required kconfig symbols are set as expected. Drop HOSTAUDIO since it is now equivalent to UML_SOUND. Set CONFIG_SOUND=m in ARCH=um defconfig files to maintain the status quo of the default configs. Allow SOUND with UML regardless of HAS_IOMEM. Otherwise there is a kconfig warning for unmet dependencies. (This was not an issue when SOUND was defined in arch/um/drivers/Kconfig. I have done 50 randconfig builds and didn't find any issues.) This fixes build errors when CONFIG_SOUND is not set: ld: arch/um/drivers/hostaudio_kern.o: in function `hostaudio_cleanup_module': hostaudio_kern.c:(.exit.text+0xa): undefined reference to `unregister_sound_mixer' ld: hostaudio_kern.c:(.exit.text+0x15): undefined reference to `unregister_sound_dsp' ld: arch/um/drivers/hostaudio_kern.o: in function `hostaudio_init_module': hostaudio_kern.c:(.init.text+0x19): undefined reference to `register_sound_dsp' ld: hostaudio_kern.c:(.init.text+0x31): undefined reference to `register_sound_mixer' ld: hostaudio_kern.c:(.init.text+0x49): undefined reference to `unregister_sound_dsp' and this kconfig warning: WARNING: unmet direct dependencies detected for SOUND Fixes:1da177e4c3
("Linux-2.6.12-rc2") Fixes:d886e87cb8
("sound: make OSS sound core optional") Signed-off-by: Randy Dunlap <rdunlap@infradead.org> Reported-by: kernel test robot <lkp@intel.com> Closes: lore.kernel.org/r/202307141416.vxuRVpFv-lkp@intel.com Cc: Richard Weinberger <richard@nod.at> Cc: Anton Ivanov <anton.ivanov@cambridgegreys.com> Cc: Johannes Berg <johannes@sipsolutions.net> Cc: linux-um@lists.infradead.org Cc: Tejun Heo <tj@kernel.org> Cc: Takashi Iwai <tiwai@suse.de> Cc: Jaroslav Kysela <perex@perex.cz> Cc: Masahiro Yamada <masahiroy@kernel.org> Cc: Nathan Chancellor <nathan@kernel.org> Cc: Nick Desaulniers <ndesaulniers@google.com> Cc: Nicolas Schier <nicolas@fjasle.eu> Cc: linux-kbuild@vger.kernel.org Cc: alsa-devel@alsa-project.org Reviewed-by: Masahiro Yamada <masahiroy@kernel.org> Signed-off-by: Richard Weinberger <richard@nod.at> Signed-off-by: Sasha Levin <sashal@kernel.org>
116 lines
2.8 KiB
Plaintext
116 lines
2.8 KiB
Plaintext
# SPDX-License-Identifier: GPL-2.0-only
|
|
menuconfig SOUND
|
|
tristate "Sound card support"
|
|
depends on HAS_IOMEM || UML
|
|
help
|
|
If you have a sound card in your computer, i.e. if it can say more
|
|
than an occasional beep, say Y.
|
|
|
|
if SOUND
|
|
|
|
config SOUND_OSS_CORE
|
|
bool
|
|
default n
|
|
|
|
config SOUND_OSS_CORE_PRECLAIM
|
|
bool "Preclaim OSS device numbers"
|
|
depends on SOUND_OSS_CORE
|
|
default y
|
|
help
|
|
With this option enabled, the kernel will claim all OSS device
|
|
numbers if any OSS support (native or emulation) is enabled
|
|
whether the respective module is loaded or not and try to load the
|
|
appropriate module using sound-slot/service-* and char-major-*
|
|
module aliases when one of the device numbers is opened. With
|
|
this option disabled, kernel will only claim actually in-use
|
|
device numbers and opening a missing device will generate only the
|
|
standard char-major-* aliases.
|
|
|
|
The only visible difference is use of additional module aliases
|
|
and whether OSS sound devices appear multiple times in
|
|
/proc/devices. sound-slot/service-* module aliases are scheduled
|
|
to be removed (ie. PRECLAIM won't be available) and this option is
|
|
to make the transition easier. This option can be overridden
|
|
during boot using the kernel parameter soundcore.preclaim_oss.
|
|
|
|
Disabling this allows alternative OSS implementations.
|
|
|
|
If unsure, say Y.
|
|
|
|
source "sound/oss/dmasound/Kconfig"
|
|
|
|
if !UML
|
|
|
|
menuconfig SND
|
|
tristate "Advanced Linux Sound Architecture"
|
|
help
|
|
Say 'Y' or 'M' to enable ALSA (Advanced Linux Sound Architecture),
|
|
the new base sound system.
|
|
|
|
For more information, see <http://www.alsa-project.org/>
|
|
|
|
if SND
|
|
|
|
source "sound/core/Kconfig"
|
|
|
|
source "sound/drivers/Kconfig"
|
|
|
|
source "sound/isa/Kconfig"
|
|
|
|
source "sound/pci/Kconfig"
|
|
|
|
source "sound/hda/Kconfig"
|
|
|
|
source "sound/ppc/Kconfig"
|
|
|
|
source "sound/ac97/Kconfig"
|
|
|
|
source "sound/aoa/Kconfig"
|
|
|
|
source "sound/arm/Kconfig"
|
|
|
|
source "sound/atmel/Kconfig"
|
|
|
|
source "sound/spi/Kconfig"
|
|
|
|
source "sound/mips/Kconfig"
|
|
|
|
source "sound/sh/Kconfig"
|
|
|
|
# the following will depend on the order of config.
|
|
# here assuming USB is defined before ALSA
|
|
source "sound/usb/Kconfig"
|
|
|
|
source "sound/firewire/Kconfig"
|
|
|
|
# the following will depend on the order of config.
|
|
# here assuming PCMCIA is defined before ALSA
|
|
source "sound/pcmcia/Kconfig"
|
|
|
|
source "sound/sparc/Kconfig"
|
|
|
|
source "sound/parisc/Kconfig"
|
|
|
|
source "sound/soc/Kconfig"
|
|
|
|
source "sound/x86/Kconfig"
|
|
|
|
source "sound/synth/Kconfig"
|
|
|
|
source "sound/xen/Kconfig"
|
|
|
|
endif # SND
|
|
|
|
endif # !UML
|
|
|
|
endif # SOUND
|
|
|
|
# AC97_BUS is used from both sound and ucb1400
|
|
config AC97_BUS
|
|
tristate
|
|
help
|
|
This is used to avoid config and link hard dependencies between the
|
|
sound subsystem and other function drivers completely unrelated to
|
|
sound although they're sharing the AC97 bus. Concerned drivers
|
|
should "select" this.
|