summaryrefslogtreecommitdiffstats
path: root/sound/pci/Kconfig
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2017-06-09 15:11:58 +0200
committerTakashi Iwai <tiwai@suse.de>2017-06-12 08:43:33 +0200
commit111b0cdb97d44cfe5dec1338a78ba8aff65c32e2 (patch)
tree41822f2d0878d180aa540a33ce4e79f19d34b10d /sound/pci/Kconfig
parent8272115578ce02566b4c6bbe45f09d0d55f4a1c6 (diff)
downloadlinux-111b0cdb97d44cfe5dec1338a78ba8aff65c32e2.tar.gz
linux-111b0cdb97d44cfe5dec1338a78ba8aff65c32e2.tar.bz2
linux-111b0cdb97d44cfe5dec1338a78ba8aff65c32e2.zip
ALSA: seq: Allow the modular sequencer registration
Many drivers bind the sequencer stuff in off-load by another driver module, so that it's loaded only on demand. In the current code, this mechanism doesn't work when the driver is built-in while the sequencer is module. We check with IS_REACHABLE() and enable only when the sequencer is in the same level of build. However, this is basically a overshoot. The binder code (snd-seq-device) is an individual module from the sequencer core (snd-seq), and we just have to make the former a built-in while keeping the latter a module for allowing the scenario like the above. This patch achieves that by rewriting Kconfig slightly. Now, a driver that provides the manual sequencer device binding should select CONFIG_SND_SEQ_DEVICE in a way as select SND_SEQ_DEVICE if SND_SEQUENCER != n Note that the "!=n" is needed here to avoid the influence of the sequencer core is module while the driver is built-in. Also, since rawmidi.o may be linked with snd_seq_device.o when built-in, we have to shuffle the code to make the linker happy. (the kernel linker isn't smart enough yet to handle such a case.) That is, snd_seq_device.c is moved to sound/core from sound/core/seq, as well as Makefile. Last but not least, the patch replaces the code using IS_REACHABLE() with IS_ENABLED(), since now the condition meets always when enabled. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/Kconfig')
-rw-r--r--sound/pci/Kconfig1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/pci/Kconfig b/sound/pci/Kconfig
index 9ac9326f28d6..d9f3fdb777e4 100644
--- a/sound/pci/Kconfig
+++ b/sound/pci/Kconfig
@@ -465,6 +465,7 @@ config SND_EMU10K1
select SND_RAWMIDI
select SND_AC97_CODEC
select SND_TIMER
+ select SND_SEQ_DEVICE if SND_SEQUENCER != n
depends on ZONE_DMA
help
Say Y to include support for Sound Blaster PCI 512, Live!,