diff options
| author | Takashi Iwai <tiwai@suse.de> | 2015-04-13 10:23:18 +0200 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2015-04-13 10:23:18 +0200 |
| commit | 9a4f35865ffcb2f4603375eadabe0d475fab1a0f (patch) | |
| tree | 1465ac717deee029d3a9c1f7235ba85be57feefa /sound/core/seq/oss/seq_oss.c | |
| parent | eef0342cf32689f77d78ee3302999e5caaa6a8f3 (diff) | |
| parent | c30cf8cbe55413cd643a0bdd3442d75950caa918 (diff) | |
Merge branch 'for-next' into for-linus
Diffstat (limited to 'sound/core/seq/oss/seq_oss.c')
| -rw-r--r-- | sound/core/seq/oss/seq_oss.c | 22 |
1 files changed, 13 insertions, 9 deletions
diff --git a/sound/core/seq/oss/seq_oss.c b/sound/core/seq/oss/seq_oss.c index 16d42679e43f..72873a46afeb 100644 --- a/sound/core/seq/oss/seq_oss.c +++ b/sound/core/seq/oss/seq_oss.c @@ -65,15 +65,20 @@ static unsigned int odev_poll(struct file *file, poll_table * wait); * module interface */ +static struct snd_seq_driver seq_oss_synth_driver = { + .driver = { + .name = KBUILD_MODNAME, + .probe = snd_seq_oss_synth_probe, + .remove = snd_seq_oss_synth_remove, + }, + .id = SNDRV_SEQ_DEV_ID_OSS, + .argsize = sizeof(struct snd_seq_oss_reg), +}; + static int __init alsa_seq_oss_init(void) { int rc; - static struct snd_seq_dev_ops ops = { - snd_seq_oss_synth_register, - snd_seq_oss_synth_unregister, - }; - snd_seq_autoload_lock(); if ((rc = register_device()) < 0) goto error; if ((rc = register_proc()) < 0) { @@ -86,8 +91,8 @@ static int __init alsa_seq_oss_init(void) goto error; } - if ((rc = snd_seq_device_register_driver(SNDRV_SEQ_DEV_ID_OSS, &ops, - sizeof(struct snd_seq_oss_reg))) < 0) { + rc = snd_seq_driver_register(&seq_oss_synth_driver); + if (rc < 0) { snd_seq_oss_delete_client(); unregister_proc(); unregister_device(); @@ -98,13 +103,12 @@ static int __init alsa_seq_oss_init(void) snd_seq_oss_synth_init(); error: - snd_seq_autoload_unlock(); return rc; } static void __exit alsa_seq_oss_exit(void) { - snd_seq_device_unregister_driver(SNDRV_SEQ_DEV_ID_OSS); + snd_seq_driver_unregister(&seq_oss_synth_driver); snd_seq_oss_delete_client(); unregister_proc(); unregister_device(); |
