2
0
mirror of https://github.com/edk2-porting/linux-next.git synced 2024-12-24 13:13:57 +08:00
linux-next/sound/drivers
Takashi Iwai 111b0cdb97 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>
2017-06-12 08:43:33 +02:00
..
mpu401 Annotate hardware config module parameters in sound/drivers/ 2017-04-20 12:02:32 +01:00
opl3 ALSA: seq: Allow the modular sequencer registration 2017-06-12 08:43:33 +02:00
opl4 ALSA: seq: Allow the modular sequencer registration 2017-06-12 08:43:33 +02:00
pcsp ALSA : pcsp: pcsp_lib: constify snd_pcsp_playback_ops 2017-06-09 09:19:41 +02:00
vx ALSA: vx: vx_pcm: constify vx_pcm_playback_ops and vx_pcm_capture_ops. 2017-06-09 09:20:37 +02:00
aloop.c ALSA: aloop: Drop unnecessary ifdef CONFIG_PROC_FS 2015-05-29 07:46:05 +02:00
dummy.c ALSA: dummy: Convert to new PCM copy ops 2017-06-02 19:37:56 +02:00
Kconfig ALSA: seq: Allow the modular sequencer registration 2017-06-12 08:43:33 +02:00
Makefile ALSA: introduce the snd-aloop module for the PCM loopback 2010-08-09 14:21:11 +02:00
ml403-ac97cr.c ALSA: Deletion of checks before the function call "iounmap" 2015-01-04 15:13:45 +01:00
mtpav.c Annotate hardware config module parameters in sound/drivers/ 2017-04-20 12:02:32 +01:00
mts64.c ALSA: drivers: Constify snd_rawmidi_ops 2017-01-12 12:50:06 +01:00
pcm-indirect2.c treewide: Fix typos in printk 2015-12-08 14:59:19 +01:00
pcm-indirect2.h [ALSA] Xilinx ML403 AC97 Controller Reference device driver 2008-01-31 17:29:15 +01:00
portman2x4.c ALSA: drivers: Constify snd_rawmidi_ops 2017-01-12 12:50:06 +01:00
serial-u16550.c Annotate hardware config module parameters in sound/drivers/ 2017-04-20 12:02:32 +01:00
virmidi.c Driver core patches for 3.19-rc1 2014-12-14 16:10:09 -08:00