Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenHarmony
kernel_linux
提交
7f8a01b7
K
kernel_linux
项目概览
OpenHarmony
/
kernel_linux
上一次同步 4 年多
通知
15
Star
8
Fork
2
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
K
kernel_linux
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
提交
7f8a01b7
编写于
6月 13, 2017
作者:
T
Takashi Iwai
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'topic/seq-kconfig' into for-next
上级
f5abd532
111b0cdb
变更
27
隐藏空白更改
内联
并排
Showing
27 changed file
with
138 addition
and
110 deletion
+138
-110
include/sound/emux_synth.h
include/sound/emux_synth.h
+3
-5
include/sound/opl3.h
include/sound/opl3.h
+1
-3
sound/Kconfig
sound/Kconfig
+2
-0
sound/core/Kconfig
sound/core/Kconfig
+9
-50
sound/core/Makefile
sound/core/Makefile
+2
-0
sound/core/rawmidi.c
sound/core/rawmidi.c
+2
-2
sound/core/seq/Kconfig
sound/core/seq/Kconfig
+57
-11
sound/core/seq/Makefile
sound/core/seq/Makefile
+7
-14
sound/core/seq/oss/Makefile
sound/core/seq/oss/Makefile
+1
-1
sound/core/seq_device.c
sound/core/seq_device.c
+0
-0
sound/drivers/Kconfig
sound/drivers/Kconfig
+15
-0
sound/drivers/opl3/opl3_lib.c
sound/drivers/opl3/opl3_lib.c
+1
-1
sound/drivers/opl3/opl3_seq.c
sound/drivers/opl3/opl3_seq.c
+2
-2
sound/drivers/opl3/opl3_voice.h
sound/drivers/opl3/opl3_voice.h
+4
-1
sound/drivers/opl4/opl4_lib.c
sound/drivers/opl4/opl4_lib.c
+2
-2
sound/drivers/opl4/opl4_local.h
sound/drivers/opl4/opl4_local.h
+1
-1
sound/isa/Kconfig
sound/isa/Kconfig
+8
-0
sound/isa/sb/emu8000.c
sound/isa/sb/emu8000.c
+1
-1
sound/isa/sb/emu8000_callback.c
sound/isa/sb/emu8000_callback.c
+3
-3
sound/isa/sb/sb16.c
sound/isa/sb/sb16.c
+1
-1
sound/pci/Kconfig
sound/pci/Kconfig
+8
-0
sound/pci/emu10k1/emu10k1.c
sound/pci/emu10k1/emu10k1.c
+1
-1
sound/synth/Kconfig
sound/synth/Kconfig
+2
-0
sound/synth/emux/Makefile
sound/synth/emux/Makefile
+1
-3
sound/synth/emux/emux.c
sound/synth/emux/emux.c
+3
-3
sound/synth/emux/emux_effect.c
sound/synth/emux/emux_effect.c
+1
-1
sound/synth/emux/emux_oss.c
sound/synth/emux/emux_oss.c
+0
-4
未找到文件。
include/sound/emux_synth.h
浏览文件 @
7f8a01b7
...
@@ -25,9 +25,7 @@
...
@@ -25,9 +25,7 @@
#include <sound/seq_device.h>
#include <sound/seq_device.h>
#include <sound/soundfont.h>
#include <sound/soundfont.h>
#include <sound/seq_midi_emul.h>
#include <sound/seq_midi_emul.h>
#ifdef CONFIG_SND_SEQUENCER_OSS
#include <sound/seq_oss.h>
#include <sound/seq_oss.h>
#endif
#include <sound/emux_legacy.h>
#include <sound/emux_legacy.h>
#include <sound/seq_virmidi.h>
#include <sound/seq_virmidi.h>
...
@@ -66,7 +64,7 @@ struct snd_emux_operators {
...
@@ -66,7 +64,7 @@ struct snd_emux_operators {
const
void
__user
*
data
,
long
count
);
const
void
__user
*
data
,
long
count
);
void
(
*
sysex
)(
struct
snd_emux
*
emu
,
char
*
buf
,
int
len
,
int
parsed
,
void
(
*
sysex
)(
struct
snd_emux
*
emu
,
char
*
buf
,
int
len
,
int
parsed
,
struct
snd_midi_channel_set
*
chset
);
struct
snd_midi_channel_set
*
chset
);
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
int
(
*
oss_ioctl
)(
struct
snd_emux
*
emu
,
int
cmd
,
int
p1
,
int
p2
);
int
(
*
oss_ioctl
)(
struct
snd_emux
*
emu
,
int
cmd
,
int
p1
,
int
p2
);
#endif
#endif
};
};
...
@@ -129,7 +127,7 @@ struct snd_emux {
...
@@ -129,7 +127,7 @@ struct snd_emux {
struct
snd_info_entry
*
proc
;
struct
snd_info_entry
*
proc
;
#endif
#endif
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
struct
snd_seq_device
*
oss_synth
;
struct
snd_seq_device
*
oss_synth
;
#endif
#endif
};
};
...
@@ -150,7 +148,7 @@ struct snd_emux_port {
...
@@ -150,7 +148,7 @@ struct snd_emux_port {
#ifdef SNDRV_EMUX_USE_RAW_EFFECT
#ifdef SNDRV_EMUX_USE_RAW_EFFECT
struct
snd_emux_effect_table
*
effect
;
struct
snd_emux_effect_table
*
effect
;
#endif
#endif
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
struct
snd_seq_oss_arg
*
oss_arg
;
struct
snd_seq_oss_arg
*
oss_arg
;
#endif
#endif
};
};
...
...
include/sound/opl3.h
浏览文件 @
7f8a01b7
...
@@ -55,10 +55,8 @@
...
@@ -55,10 +55,8 @@
#include <sound/hwdep.h>
#include <sound/hwdep.h>
#include <sound/timer.h>
#include <sound/timer.h>
#include <sound/seq_midi_emul.h>
#include <sound/seq_midi_emul.h>
#ifdef CONFIG_SND_SEQUENCER_OSS
#include <sound/seq_oss.h>
#include <sound/seq_oss.h>
#include <sound/seq_oss_legacy.h>
#include <sound/seq_oss_legacy.h>
#endif
#include <sound/seq_device.h>
#include <sound/seq_device.h>
#include <sound/asound_fm.h>
#include <sound/asound_fm.h>
...
@@ -330,7 +328,7 @@ struct snd_opl3 {
...
@@ -330,7 +328,7 @@ struct snd_opl3 {
struct
snd_seq_device
*
seq_dev
;
/* sequencer device */
struct
snd_seq_device
*
seq_dev
;
/* sequencer device */
struct
snd_midi_channel_set
*
chset
;
struct
snd_midi_channel_set
*
chset
;
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
struct
snd_seq_device
*
oss_seq_dev
;
/* OSS sequencer device */
struct
snd_seq_device
*
oss_seq_dev
;
/* OSS sequencer device */
struct
snd_midi_channel_set
*
oss_chset
;
struct
snd_midi_channel_set
*
oss_chset
;
#endif
#endif
...
...
sound/Kconfig
浏览文件 @
7f8a01b7
...
@@ -110,6 +110,8 @@ source "sound/soc/Kconfig"
...
@@ -110,6 +110,8 @@ source "sound/soc/Kconfig"
source "sound/x86/Kconfig"
source "sound/x86/Kconfig"
source "sound/synth/Kconfig"
endif # SND
endif # SND
menuconfig SOUND_PRIME
menuconfig SOUND_PRIME
...
...
sound/core/Kconfig
浏览文件 @
7f8a01b7
...
@@ -18,8 +18,12 @@ config SND_DMAENGINE_PCM
...
@@ -18,8 +18,12 @@ config SND_DMAENGINE_PCM
config SND_HWDEP
config SND_HWDEP
tristate
tristate
config SND_SEQ_DEVICE
tristate
config SND_RAWMIDI
config SND_RAWMIDI
tristate
tristate
select SND_SEQ_DEVICE if SND_SEQUENCER != n
config SND_COMPRESS_OFFLOAD
config SND_COMPRESS_OFFLOAD
tristate
tristate
...
@@ -33,38 +37,15 @@ config SND_JACK_INPUT_DEV
...
@@ -33,38 +37,15 @@ config SND_JACK_INPUT_DEV
depends on SND_JACK
depends on SND_JACK
default y if INPUT=y || INPUT=SND
default y if INPUT=y || INPUT=SND
config SND_SEQUENCER
tristate "Sequencer support"
select SND_TIMER
help
Say Y or M to enable MIDI sequencer and router support. This
feature allows routing and enqueueing of MIDI events. Events
can be processed at a given time.
Many programs require this feature, so you should enable it
unless you know what you're doing.
config SND_SEQ_DUMMY
tristate "Sequencer dummy client"
depends on SND_SEQUENCER
help
Say Y here to enable the dummy sequencer client. This client
is a simple MIDI-through client: all normal input events are
redirected to the output port immediately.
You don't need this unless you want to connect many MIDI
devices or applications together.
To compile this driver as a module, choose M here: the module
will be called snd-seq-dummy.
config SND_OSSEMUL
config SND_OSSEMUL
bool "Enable OSS Emulation"
select SOUND_OSS_CORE
select SOUND_OSS_CORE
bool
help
This option enables the build of OSS emulation layer.
config SND_MIXER_OSS
config SND_MIXER_OSS
tristate "OSS Mixer API"
tristate "OSS Mixer API"
select
SND_OSSEMUL
depends on
SND_OSSEMUL
help
help
To enable OSS mixer API emulation (/dev/mixer*), say Y here
To enable OSS mixer API emulation (/dev/mixer*), say Y here
and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
and read <file:Documentation/sound/alsa/OSS-Emulation.txt>.
...
@@ -76,7 +57,7 @@ config SND_MIXER_OSS
...
@@ -76,7 +57,7 @@ config SND_MIXER_OSS
config SND_PCM_OSS
config SND_PCM_OSS
tristate "OSS PCM (digital audio) API"
tristate "OSS PCM (digital audio) API"
select
SND_OSSEMUL
depends on
SND_OSSEMUL
select SND_PCM
select SND_PCM
help
help
To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
To enable OSS digital audio (PCM) emulation (/dev/dsp*), say Y
...
@@ -107,20 +88,6 @@ config SND_PCM_TIMER
...
@@ -107,20 +88,6 @@ config SND_PCM_TIMER
For some embedded devices, we may disable it to reduce memory
For some embedded devices, we may disable it to reduce memory
footprint, about 20KB on x86_64 platform.
footprint, about 20KB on x86_64 platform.
config SND_SEQUENCER_OSS
bool "OSS Sequencer API"
depends on SND_SEQUENCER
select SND_OSSEMUL
help
Say Y here to enable OSS sequencer emulation (both
/dev/sequencer and /dev/music interfaces).
Many programs still use the OSS API, so say Y.
If you choose M in "Sequencer support" (SND_SEQUENCER),
this will be compiled as a module. The module will be called
snd-seq-oss.
config SND_HRTIMER
config SND_HRTIMER
tristate "HR-timer backend support"
tristate "HR-timer backend support"
depends on HIGH_RES_TIMERS
depends on HIGH_RES_TIMERS
...
@@ -133,14 +100,6 @@ config SND_HRTIMER
...
@@ -133,14 +100,6 @@ config SND_HRTIMER
To compile this driver as a module, choose M here: the module
To compile this driver as a module, choose M here: the module
will be called snd-hrtimer.
will be called snd-hrtimer.
config SND_SEQ_HRTIMER_DEFAULT
bool "Use HR-timer as default sequencer timer"
depends on SND_HRTIMER && SND_SEQUENCER
default y
help
Say Y here to use the HR-timer backend as the default sequencer
timer.
config SND_DYNAMIC_MINORS
config SND_DYNAMIC_MINORS
bool "Dynamic device file minor numbers"
bool "Dynamic device file minor numbers"
help
help
...
...
sound/core/Makefile
浏览文件 @
7f8a01b7
...
@@ -31,6 +31,7 @@ snd-timer-objs := timer.o
...
@@ -31,6 +31,7 @@ snd-timer-objs := timer.o
snd-hrtimer-objs
:=
hrtimer.o
snd-hrtimer-objs
:=
hrtimer.o
snd-rtctimer-objs
:=
rtctimer.o
snd-rtctimer-objs
:=
rtctimer.o
snd-hwdep-objs
:=
hwdep.o
snd-hwdep-objs
:=
hwdep.o
snd-seq-device-objs
:=
seq_device.o
snd-compress-objs
:=
compress_offload.o
snd-compress-objs
:=
compress_offload.o
...
@@ -40,6 +41,7 @@ obj-$(CONFIG_SND_TIMER) += snd-timer.o
...
@@ -40,6 +41,7 @@ obj-$(CONFIG_SND_TIMER) += snd-timer.o
obj-$(CONFIG_SND_HRTIMER)
+=
snd-hrtimer.o
obj-$(CONFIG_SND_HRTIMER)
+=
snd-hrtimer.o
obj-$(CONFIG_SND_PCM)
+=
snd-pcm.o
obj-$(CONFIG_SND_PCM)
+=
snd-pcm.o
obj-$(CONFIG_SND_DMAENGINE_PCM)
+=
snd-pcm-dmaengine.o
obj-$(CONFIG_SND_DMAENGINE_PCM)
+=
snd-pcm-dmaengine.o
obj-$(CONFIG_SND_SEQ_DEVICE)
+=
snd-seq-device.o
obj-$(CONFIG_SND_RAWMIDI)
+=
snd-rawmidi.o
obj-$(CONFIG_SND_RAWMIDI)
+=
snd-rawmidi.o
obj-$(CONFIG_SND_OSSEMUL)
+=
oss/
obj-$(CONFIG_SND_OSSEMUL)
+=
oss/
...
...
sound/core/rawmidi.c
浏览文件 @
7f8a01b7
...
@@ -1610,7 +1610,7 @@ static int snd_rawmidi_dev_free(struct snd_device *device)
...
@@ -1610,7 +1610,7 @@ static int snd_rawmidi_dev_free(struct snd_device *device)
return
snd_rawmidi_free
(
rmidi
);
return
snd_rawmidi_free
(
rmidi
);
}
}
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
static
void
snd_rawmidi_dev_seq_free
(
struct
snd_seq_device
*
device
)
static
void
snd_rawmidi_dev_seq_free
(
struct
snd_seq_device
*
device
)
{
{
struct
snd_rawmidi
*
rmidi
=
device
->
private_data
;
struct
snd_rawmidi
*
rmidi
=
device
->
private_data
;
...
@@ -1691,7 +1691,7 @@ static int snd_rawmidi_dev_register(struct snd_device *device)
...
@@ -1691,7 +1691,7 @@ static int snd_rawmidi_dev_register(struct snd_device *device)
}
}
}
}
rmidi
->
proc_entry
=
entry
;
rmidi
->
proc_entry
=
entry
;
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
if
(
!
rmidi
->
ops
||
!
rmidi
->
ops
->
dev_register
)
{
/* own registration mechanism */
if
(
!
rmidi
->
ops
||
!
rmidi
->
ops
->
dev_register
)
{
/* own registration mechanism */
if
(
snd_seq_device_new
(
rmidi
->
card
,
rmidi
->
device
,
SNDRV_SEQ_DEV_ID_MIDISYNTH
,
0
,
&
rmidi
->
seq_dev
)
>=
0
)
{
if
(
snd_seq_device_new
(
rmidi
->
card
,
rmidi
->
device
,
SNDRV_SEQ_DEV_ID_MIDISYNTH
,
0
,
&
rmidi
->
seq_dev
)
>=
0
)
{
rmidi
->
seq_dev
->
private_data
=
rmidi
;
rmidi
->
seq_dev
->
private_data
=
rmidi
;
...
...
sound/core/seq/Kconfig
浏览文件 @
7f8a01b7
# define SND_XXX_SEQ to min(SND_SEQUENCER,SND_XXX)
config SND_SEQUENCER
tristate "Sequencer support"
select SND_TIMER
select SND_SEQ_DEVICE
help
Say Y or M to enable MIDI sequencer and router support. This
feature allows routing and enqueueing of MIDI events. Events
can be processed at a given time.
config SND_RAWMIDI_SEQ
Many programs require this feature, so you should enable it
def_tristate SND_SEQUENCER && SND_RAWMIDI
unless you know what you're doing.
config SND_OPL3_LIB_SEQ
if SND_SEQUENCER
def_tristate SND_SEQUENCER && SND_OPL3_LIB
config SND_OPL4_LIB_SEQ
config SND_SEQ_DUMMY
def_tristate SND_SEQUENCER && SND_OPL4_LIB
tristate "Sequencer dummy client"
help
Say Y here to enable the dummy sequencer client. This client
is a simple MIDI-through client: all normal input events are
redirected to the output port immediately.
config SND_SBAWE_SEQ
You don't need this unless you want to connect many MIDI
def_tristate SND_SEQUENCER && SND_SBAWE
devices or applications together.
config SND_EMU10K1_SEQ
To compile this driver as a module, choose M here: the module
def_tristate SND_SEQUENCER && SND_EMU10K1
will be called snd-seq-dummy.
config SND_SEQUENCER_OSS
tristate "OSS Sequencer API"
depends on SND_OSSEMUL
select SND_SEQ_MIDI_EVENT
help
Say Y here to enable OSS sequencer emulation (both
/dev/sequencer and /dev/music interfaces).
Many programs still use the OSS API, so say Y.
To compile this driver as a module, choose M here: the module
will be called snd-seq-oss.
config SND_SEQ_HRTIMER_DEFAULT
bool "Use HR-timer as default sequencer timer"
depends on SND_HRTIMER
default y
help
Say Y here to use the HR-timer backend as the default sequencer
timer.
config SND_SEQ_MIDI_EVENT
def_tristate SND_RAWMIDI
config SND_SEQ_MIDI
tristate
select SND_SEQ_MIDI_EVENT
config SND_SEQ_MIDI_EMUL
tristate
config SND_SEQ_VIRMIDI
tristate
endif # SND_SEQUENCER
sound/core/seq/Makefile
浏览文件 @
7f8a01b7
...
@@ -3,7 +3,6 @@
...
@@ -3,7 +3,6 @@
# Copyright (c) 1999 by Jaroslav Kysela <perex@perex.cz>
# Copyright (c) 1999 by Jaroslav Kysela <perex@perex.cz>
#
#
snd-seq-device-objs
:=
seq_device.o
snd-seq-objs
:=
seq.o seq_lock.o seq_clientmgr.o seq_memory.o seq_queue.o
\
snd-seq-objs
:=
seq.o seq_lock.o seq_clientmgr.o seq_memory.o seq_queue.o
\
seq_fifo.o seq_prioq.o seq_timer.o
\
seq_fifo.o seq_prioq.o seq_timer.o
\
seq_system.o seq_ports.o
seq_system.o seq_ports.o
...
@@ -14,17 +13,11 @@ snd-seq-midi-event-objs := seq_midi_event.o
...
@@ -14,17 +13,11 @@ snd-seq-midi-event-objs := seq_midi_event.o
snd-seq-dummy-objs
:=
seq_dummy.o
snd-seq-dummy-objs
:=
seq_dummy.o
snd-seq-virmidi-objs
:=
seq_virmidi.o
snd-seq-virmidi-objs
:=
seq_virmidi.o
obj-$(CONFIG_SND_SEQUENCER)
+=
snd-seq.o snd-seq-device.o
obj-$(CONFIG_SND_SEQUENCER)
+=
snd-seq.o
ifeq
($(CONFIG_SND_SEQUENCER_OSS),y)
obj-$(CONFIG_SND_SEQUENCER_OSS)
+=
oss/
obj-$(CONFIG_SND_SEQUENCER)
+=
snd-seq-midi-event.o
obj-$(CONFIG_SND_SEQUENCER)
+=
oss/
endif
obj-$(CONFIG_SND_SEQ_DUMMY)
+=
snd-seq-dummy.o
# Toplevel Module Dependency
obj-$(CONFIG_SND_SEQ_DUMMY)
+=
snd-seq-dummy.o
obj-$(CONFIG_SND_VIRMIDI)
+=
snd-seq-virmidi.o snd-seq-midi-event.o
obj-$(CONFIG_SND_SEQ_MIDI)
+=
snd-seq-midi.o
obj-$(CONFIG_SND_RAWMIDI_SEQ)
+=
snd-seq-midi.o snd-seq-midi-event.o
obj-$(CONFIG_SND_SEQ_MIDI_EMUL)
+=
snd-seq-midi-emul.o
obj-$(CONFIG_SND_OPL3_LIB_SEQ)
+=
snd-seq-midi-event.o snd-seq-midi-emul.o
obj-$(CONFIG_SND_SEQ_MIDI_EVENT)
+=
snd-seq-midi-event.o
obj-$(CONFIG_SND_OPL4_LIB_SEQ)
+=
snd-seq-midi-event.o snd-seq-midi-emul.o
obj-$(CONFIG_SND_SEQ_VIRMIDI)
+=
snd-seq-virmidi.o
obj-$(CONFIG_SND_SBAWE_SEQ)
+=
snd-seq-midi-emul.o snd-seq-virmidi.o
obj-$(CONFIG_SND_EMU10K1_SEQ)
+=
snd-seq-midi-emul.o snd-seq-virmidi.o
sound/core/seq/oss/Makefile
浏览文件 @
7f8a01b7
...
@@ -7,4 +7,4 @@ snd-seq-oss-objs := seq_oss.o seq_oss_init.o seq_oss_timer.o seq_oss_ioctl.o \
...
@@ -7,4 +7,4 @@ snd-seq-oss-objs := seq_oss.o seq_oss_init.o seq_oss_timer.o seq_oss_ioctl.o \
seq_oss_event.o seq_oss_rw.o seq_oss_synth.o
\
seq_oss_event.o seq_oss_rw.o seq_oss_synth.o
\
seq_oss_midi.o seq_oss_readq.o seq_oss_writeq.o
seq_oss_midi.o seq_oss_readq.o seq_oss_writeq.o
obj-$(CONFIG_SND_SEQUENCER)
+=
snd-seq-oss.o
obj-$(CONFIG_SND_SEQUENCER
_OSS
)
+=
snd-seq-oss.o
sound/core/seq
/seq
_device.c
→
sound/core/seq_device.c
浏览文件 @
7f8a01b7
文件已移动
sound/drivers/Kconfig
浏览文件 @
7f8a01b7
...
@@ -6,11 +6,24 @@ config SND_OPL3_LIB
...
@@ -6,11 +6,24 @@ config SND_OPL3_LIB
tristate
tristate
select SND_TIMER
select SND_TIMER
select SND_HWDEP
select SND_HWDEP
select SND_SEQ_DEVICE if SND_SEQUENCER != n
config SND_OPL4_LIB
config SND_OPL4_LIB
tristate
tristate
select SND_TIMER
select SND_TIMER
select SND_HWDEP
select SND_HWDEP
select SND_SEQ_DEVICE if SND_SEQUENCER != n
# select SEQ stuff to min(SND_SEQUENCER,SND_XXX)
config SND_OPL3_LIB_SEQ
def_tristate SND_SEQUENCER && SND_OPL3_LIB
select SND_SEQ_MIDI_EMUL
select SND_SEQ_MIDI_EVENT
config SND_OPL4_LIB_SEQ
def_tristate SND_SEQUENCER && SND_OPL4_LIB
select SND_SEQ_MIDI_EMUL
select SND_SEQ_MIDI_EVENT
config SND_VX_LIB
config SND_VX_LIB
tristate
tristate
...
@@ -99,6 +112,8 @@ config SND_VIRMIDI
...
@@ -99,6 +112,8 @@ config SND_VIRMIDI
depends on SND_SEQUENCER
depends on SND_SEQUENCER
select SND_TIMER
select SND_TIMER
select SND_RAWMIDI
select SND_RAWMIDI
select SND_SEQ_VIRMIDI
select SND_SEQ_MIDI_EVENT
help
help
Say Y here to include the virtual MIDI driver. This driver
Say Y here to include the virtual MIDI driver. This driver
allows to connect applications using raw MIDI devices to
allows to connect applications using raw MIDI devices to
...
...
sound/drivers/opl3/opl3_lib.c
浏览文件 @
7f8a01b7
...
@@ -528,7 +528,7 @@ int snd_opl3_hwdep_new(struct snd_opl3 * opl3,
...
@@ -528,7 +528,7 @@ int snd_opl3_hwdep_new(struct snd_opl3 * opl3,
opl3
->
hwdep
=
hw
;
opl3
->
hwdep
=
hw
;
opl3
->
seq_dev_num
=
seq_device
;
opl3
->
seq_dev_num
=
seq_device
;
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
if
(
snd_seq_device_new
(
card
,
seq_device
,
SNDRV_SEQ_DEV_ID_OPL3
,
if
(
snd_seq_device_new
(
card
,
seq_device
,
SNDRV_SEQ_DEV_ID_OPL3
,
sizeof
(
struct
snd_opl3
*
),
&
opl3
->
seq_dev
)
>=
0
)
{
sizeof
(
struct
snd_opl3
*
),
&
opl3
->
seq_dev
)
>=
0
)
{
strcpy
(
opl3
->
seq_dev
->
name
,
hw
->
name
);
strcpy
(
opl3
->
seq_dev
->
name
,
hw
->
name
);
...
...
sound/drivers/opl3/opl3_seq.c
浏览文件 @
7f8a01b7
...
@@ -252,7 +252,7 @@ static int snd_opl3_seq_probe(struct device *_dev)
...
@@ -252,7 +252,7 @@ static int snd_opl3_seq_probe(struct device *_dev)
spin_lock_init
(
&
opl3
->
sys_timer_lock
);
spin_lock_init
(
&
opl3
->
sys_timer_lock
);
opl3
->
sys_timer_status
=
0
;
opl3
->
sys_timer_status
=
0
;
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
snd_opl3_init_seq_oss
(
opl3
,
name
);
snd_opl3_init_seq_oss
(
opl3
,
name
);
#endif
#endif
return
0
;
return
0
;
...
@@ -267,7 +267,7 @@ static int snd_opl3_seq_remove(struct device *_dev)
...
@@ -267,7 +267,7 @@ static int snd_opl3_seq_remove(struct device *_dev)
if
(
opl3
==
NULL
)
if
(
opl3
==
NULL
)
return
-
EINVAL
;
return
-
EINVAL
;
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
snd_opl3_free_seq_oss
(
opl3
);
snd_opl3_free_seq_oss
(
opl3
);
#endif
#endif
if
(
opl3
->
seq_client
>=
0
)
{
if
(
opl3
->
seq_client
>=
0
)
{
...
...
sound/drivers/opl3/opl3_voice.h
浏览文件 @
7f8a01b7
...
@@ -44,9 +44,12 @@ void snd_opl3_load_drums(struct snd_opl3 *opl3);
...
@@ -44,9 +44,12 @@ void snd_opl3_load_drums(struct snd_opl3 *opl3);
void
snd_opl3_drum_switch
(
struct
snd_opl3
*
opl3
,
int
note
,
int
on_off
,
int
vel
,
struct
snd_midi_channel
*
chan
);
void
snd_opl3_drum_switch
(
struct
snd_opl3
*
opl3
,
int
note
,
int
on_off
,
int
vel
,
struct
snd_midi_channel
*
chan
);
/* Prototypes for opl3_oss.c */
/* Prototypes for opl3_oss.c */
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
void
snd_opl3_init_seq_oss
(
struct
snd_opl3
*
opl3
,
char
*
name
);
void
snd_opl3_init_seq_oss
(
struct
snd_opl3
*
opl3
,
char
*
name
);
void
snd_opl3_free_seq_oss
(
struct
snd_opl3
*
opl3
);
void
snd_opl3_free_seq_oss
(
struct
snd_opl3
*
opl3
);
#else
#define snd_opl3_init_seq_oss(opl3, name)
/* NOP */
#define snd_opl3_free_seq_oss(opl3)
/* NOP */
#endif
#endif
#endif
#endif
sound/drivers/opl4/opl4_lib.c
浏览文件 @
7f8a01b7
...
@@ -153,7 +153,7 @@ static int snd_opl4_detect(struct snd_opl4 *opl4)
...
@@ -153,7 +153,7 @@ static int snd_opl4_detect(struct snd_opl4 *opl4)
return
0
;
return
0
;
}
}
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
static
void
snd_opl4_seq_dev_free
(
struct
snd_seq_device
*
seq_dev
)
static
void
snd_opl4_seq_dev_free
(
struct
snd_seq_device
*
seq_dev
)
{
{
struct
snd_opl4
*
opl4
=
seq_dev
->
private_data
;
struct
snd_opl4
*
opl4
=
seq_dev
->
private_data
;
...
@@ -249,7 +249,7 @@ int snd_opl4_create(struct snd_card *card,
...
@@ -249,7 +249,7 @@ int snd_opl4_create(struct snd_card *card,
snd_opl4_create_mixer
(
opl4
);
snd_opl4_create_mixer
(
opl4
);
snd_opl4_create_proc
(
opl4
);
snd_opl4_create_proc
(
opl4
);
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
opl4
->
seq_client
=
-
1
;
opl4
->
seq_client
=
-
1
;
if
(
opl4
->
hardware
<
OPL3_HW_OPL4_ML
)
if
(
opl4
->
hardware
<
OPL3_HW_OPL4_ML
)
snd_opl4_create_seq_dev
(
opl4
,
seq_device
);
snd_opl4_create_seq_dev
(
opl4
,
seq_device
);
...
...
sound/drivers/opl4/opl4_local.h
浏览文件 @
7f8a01b7
...
@@ -184,7 +184,7 @@ struct snd_opl4 {
...
@@ -184,7 +184,7 @@ struct snd_opl4 {
#endif
#endif
struct
mutex
access_mutex
;
struct
mutex
access_mutex
;
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
int
used
;
int
used
;
int
seq_dev_num
;
int
seq_dev_num
;
...
...
sound/isa/Kconfig
浏览文件 @
7f8a01b7
...
@@ -377,6 +377,7 @@ config SND_SBAWE
...
@@ -377,6 +377,7 @@ config SND_SBAWE
select SND_OPL3_LIB
select SND_OPL3_LIB
select SND_MPU401_UART
select SND_MPU401_UART
select SND_SB16_DSP
select SND_SB16_DSP
select SND_SEQ_DEVICE if SND_SEQUENCER != n
help
help
Say Y here to include support for Sound Blaster AWE soundcards
Say Y here to include support for Sound Blaster AWE soundcards
(including the Plug and Play version).
(including the Plug and Play version).
...
@@ -384,6 +385,13 @@ config SND_SBAWE
...
@@ -384,6 +385,13 @@ config SND_SBAWE
To compile this driver as a module, choose M here: the module
To compile this driver as a module, choose M here: the module
will be called snd-sbawe.
will be called snd-sbawe.
# select SEQ stuff to min(SND_SEQUENCER,SND_XXX)
config SND_SBAWE_SEQ
def_tristate SND_SEQUENCER && SND_SBAWE
select SND_SEQ_MIDI_EMUL
select SND_SEQ_VIRMIDI
select SND_SYNTH_EMUX
config SND_SB16_CSP
config SND_SB16_CSP
bool "Sound Blaster 16/AWE CSP support"
bool "Sound Blaster 16/AWE CSP support"
depends on (SND_SB16 || SND_SBAWE) && (BROKEN || !PPC)
depends on (SND_SB16 || SND_SBAWE) && (BROKEN || !PPC)
...
...
sound/isa/sb/emu8000.c
浏览文件 @
7f8a01b7
...
@@ -1138,7 +1138,7 @@ snd_emu8000_new(struct snd_card *card, int index, long port, int seq_ports,
...
@@ -1138,7 +1138,7 @@ snd_emu8000_new(struct snd_card *card, int index, long port, int seq_ports,
snd_emu8000_free
(
hw
);
snd_emu8000_free
(
hw
);
return
err
;
return
err
;
}
}
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
if
(
snd_seq_device_new
(
card
,
index
,
SNDRV_SEQ_DEV_ID_EMU8000
,
if
(
snd_seq_device_new
(
card
,
index
,
SNDRV_SEQ_DEV_ID_EMU8000
,
sizeof
(
struct
snd_emu8000
*
),
&
awe
)
>=
0
)
{
sizeof
(
struct
snd_emu8000
*
),
&
awe
)
>=
0
)
{
strcpy
(
awe
->
name
,
"EMU-8000"
);
strcpy
(
awe
->
name
,
"EMU-8000"
);
...
...
sound/isa/sb/emu8000_callback.c
浏览文件 @
7f8a01b7
...
@@ -36,7 +36,7 @@ static void reset_voice(struct snd_emux *emu, int ch);
...
@@ -36,7 +36,7 @@ static void reset_voice(struct snd_emux *emu, int ch);
static
void
terminate_voice
(
struct
snd_emux_voice
*
vp
);
static
void
terminate_voice
(
struct
snd_emux_voice
*
vp
);
static
void
sysex
(
struct
snd_emux
*
emu
,
char
*
buf
,
int
len
,
int
parsed
,
static
void
sysex
(
struct
snd_emux
*
emu
,
char
*
buf
,
int
len
,
int
parsed
,
struct
snd_midi_channel_set
*
chset
);
struct
snd_midi_channel_set
*
chset
);
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
static
int
oss_ioctl
(
struct
snd_emux
*
emu
,
int
cmd
,
int
p1
,
int
p2
);
static
int
oss_ioctl
(
struct
snd_emux
*
emu
,
int
cmd
,
int
p1
,
int
p2
);
#endif
#endif
static
int
load_fx
(
struct
snd_emux
*
emu
,
int
type
,
int
mode
,
static
int
load_fx
(
struct
snd_emux
*
emu
,
int
type
,
int
mode
,
...
@@ -76,7 +76,7 @@ static struct snd_emux_operators emu8000_ops = {
...
@@ -76,7 +76,7 @@ static struct snd_emux_operators emu8000_ops = {
.
sample_reset
=
snd_emu8000_sample_reset
,
.
sample_reset
=
snd_emu8000_sample_reset
,
.
load_fx
=
load_fx
,
.
load_fx
=
load_fx
,
.
sysex
=
sysex
,
.
sysex
=
sysex
,
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
.
oss_ioctl
=
oss_ioctl
,
.
oss_ioctl
=
oss_ioctl
,
#endif
#endif
};
};
...
@@ -477,7 +477,7 @@ sysex(struct snd_emux *emu, char *buf, int len, int parsed, struct snd_midi_chan
...
@@ -477,7 +477,7 @@ sysex(struct snd_emux *emu, char *buf, int len, int parsed, struct snd_midi_chan
}
}
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
/*
/*
* OSS ioctl callback
* OSS ioctl callback
*/
*/
...
...
sound/isa/sb/sb16.c
浏览文件 @
7f8a01b7
...
@@ -62,7 +62,7 @@ MODULE_SUPPORTED_DEVICE("{{Creative Labs,SB AWE 32},"
...
@@ -62,7 +62,7 @@ MODULE_SUPPORTED_DEVICE("{{Creative Labs,SB AWE 32},"
#define SNDRV_DEBUG_IRQ
#define SNDRV_DEBUG_IRQ
#endif
#endif
#if defined(SNDRV_SBAWE) && IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if defined(SNDRV_SBAWE) && IS_
ENABLED
(CONFIG_SND_SEQUENCER)
#define SNDRV_SBAWE_EMU8000
#define SNDRV_SBAWE_EMU8000
#endif
#endif
...
...
sound/pci/Kconfig
浏览文件 @
7f8a01b7
...
@@ -465,6 +465,7 @@ config SND_EMU10K1
...
@@ -465,6 +465,7 @@ config SND_EMU10K1
select SND_RAWMIDI
select SND_RAWMIDI
select SND_AC97_CODEC
select SND_AC97_CODEC
select SND_TIMER
select SND_TIMER
select SND_SEQ_DEVICE if SND_SEQUENCER != n
depends on ZONE_DMA
depends on ZONE_DMA
help
help
Say Y to include support for Sound Blaster PCI 512, Live!,
Say Y to include support for Sound Blaster PCI 512, Live!,
...
@@ -477,6 +478,13 @@ config SND_EMU10K1
...
@@ -477,6 +478,13 @@ config SND_EMU10K1
To compile this driver as a module, choose M here: the module
To compile this driver as a module, choose M here: the module
will be called snd-emu10k1.
will be called snd-emu10k1.
# select SEQ stuff to min(SND_SEQUENCER,SND_XXX)
config SND_EMU10K1_SEQ
def_tristate SND_SEQUENCER && SND_EMU10K1
select SND_SEQ_MIDI_EMUL
select SND_SEQ_VIRMIDI
select SND_SYNTH_EMUX
config SND_EMU10K1X
config SND_EMU10K1X
tristate "Emu10k1X (Dell OEM Version)"
tristate "Emu10k1X (Dell OEM Version)"
select SND_AC97_CODEC
select SND_AC97_CODEC
...
...
sound/pci/emu10k1/emu10k1.c
浏览文件 @
7f8a01b7
...
@@ -37,7 +37,7 @@ MODULE_LICENSE("GPL");
...
@@ -37,7 +37,7 @@ MODULE_LICENSE("GPL");
MODULE_SUPPORTED_DEVICE
(
"{{Creative Labs,SB Live!/PCI512/E-mu APS},"
MODULE_SUPPORTED_DEVICE
(
"{{Creative Labs,SB Live!/PCI512/E-mu APS},"
"{Creative Labs,SB Audigy}}"
);
"{Creative Labs,SB Audigy}}"
);
#if IS_
REACHABLE
(CONFIG_SND_SEQUENCER)
#if IS_
ENABLED
(CONFIG_SND_SEQUENCER)
#define ENABLE_SYNTH
#define ENABLE_SYNTH
#include <sound/emu10k1_synth.h>
#include <sound/emu10k1_synth.h>
#endif
#endif
...
...
sound/synth/Kconfig
0 → 100644
浏览文件 @
7f8a01b7
config SND_SYNTH_EMUX
tristate
sound/synth/emux/Makefile
浏览文件 @
7f8a01b7
...
@@ -8,6 +8,4 @@ snd-emux-synth-objs := emux.o emux_synth.o emux_seq.o emux_nrpn.o \
...
@@ -8,6 +8,4 @@ snd-emux-synth-objs := emux.o emux_synth.o emux_seq.o emux_nrpn.o \
snd-emux-synth-$(CONFIG_SND_PROC_FS)
+=
emux_proc.o
snd-emux-synth-$(CONFIG_SND_PROC_FS)
+=
emux_proc.o
snd-emux-synth-$(CONFIG_SND_SEQUENCER_OSS)
+=
emux_oss.o
snd-emux-synth-$(CONFIG_SND_SEQUENCER_OSS)
+=
emux_oss.o
# Toplevel Module Dependencies
obj-$(CONFIG_SND_SYNTH_EMUX)
+=
snd-emux-synth.o
obj-$(CONFIG_SND_SBAWE_SEQ)
+=
snd-emux-synth.o
obj-$(CONFIG_SND_EMU10K1_SEQ)
+=
snd-emux-synth.o
sound/synth/emux/emux.c
浏览文件 @
7f8a01b7
...
@@ -47,7 +47,7 @@ int snd_emux_new(struct snd_emux **remu)
...
@@ -47,7 +47,7 @@ int snd_emux_new(struct snd_emux **remu)
mutex_init
(
&
emu
->
register_mutex
);
mutex_init
(
&
emu
->
register_mutex
);
emu
->
client
=
-
1
;
emu
->
client
=
-
1
;
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
emu
->
oss_synth
=
NULL
;
emu
->
oss_synth
=
NULL
;
#endif
#endif
emu
->
max_voices
=
0
;
emu
->
max_voices
=
0
;
...
@@ -123,7 +123,7 @@ int snd_emux_register(struct snd_emux *emu, struct snd_card *card, int index, ch
...
@@ -123,7 +123,7 @@ int snd_emux_register(struct snd_emux *emu, struct snd_card *card, int index, ch
snd_emux_init_voices
(
emu
);
snd_emux_init_voices
(
emu
);
snd_emux_init_seq
(
emu
,
card
,
index
);
snd_emux_init_seq
(
emu
,
card
,
index
);
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
snd_emux_init_seq_oss
(
emu
);
snd_emux_init_seq_oss
(
emu
);
#endif
#endif
snd_emux_init_virmidi
(
emu
,
card
);
snd_emux_init_virmidi
(
emu
,
card
);
...
@@ -150,7 +150,7 @@ int snd_emux_free(struct snd_emux *emu)
...
@@ -150,7 +150,7 @@ int snd_emux_free(struct snd_emux *emu)
snd_emux_proc_free
(
emu
);
snd_emux_proc_free
(
emu
);
snd_emux_delete_virmidi
(
emu
);
snd_emux_delete_virmidi
(
emu
);
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
snd_emux_detach_seq_oss
(
emu
);
snd_emux_detach_seq_oss
(
emu
);
#endif
#endif
snd_emux_detach_seq
(
emu
);
snd_emux_detach_seq
(
emu
);
...
...
sound/synth/emux/emux_effect.c
浏览文件 @
7f8a01b7
...
@@ -150,7 +150,7 @@ effect_get_offset(struct snd_midi_channel *chan, int lo, int hi, int mode)
...
@@ -150,7 +150,7 @@ effect_get_offset(struct snd_midi_channel *chan, int lo, int hi, int mode)
return
addr
;
return
addr
;
}
}
#if
def CONFIG_SND_SEQUENCER_OSS
#if
IS_ENABLED(CONFIG_SND_SEQUENCER_OSS)
/* change effects - for OSS sequencer compatibility */
/* change effects - for OSS sequencer compatibility */
void
void
snd_emux_send_effect_oss
(
struct
snd_emux_port
*
port
,
snd_emux_send_effect_oss
(
struct
snd_emux_port
*
port
,
...
...
sound/synth/emux/emux_oss.c
浏览文件 @
7f8a01b7
...
@@ -23,8 +23,6 @@
...
@@ -23,8 +23,6 @@
*/
*/
#ifdef CONFIG_SND_SEQUENCER_OSS
#include <linux/export.h>
#include <linux/export.h>
#include <linux/uaccess.h>
#include <linux/uaccess.h>
#include <sound/core.h>
#include <sound/core.h>
...
@@ -505,5 +503,3 @@ fake_event(struct snd_emux *emu, struct snd_emux_port *port, int ch, int param,
...
@@ -505,5 +503,3 @@ fake_event(struct snd_emux *emu, struct snd_emux_port *port, int ch, int param,
ev
.
data
.
control
.
value
=
val
;
ev
.
data
.
control
.
value
=
val
;
snd_emux_event_input
(
&
ev
,
0
,
port
,
atomic
,
hop
);
snd_emux_event_input
(
&
ev
,
0
,
port
,
atomic
,
hop
);
}
}
#endif
/* CONFIG_SND_SEQUENCER_OSS */
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录