ALSA: seq: Handle the device directly
Like the previous change for the timer device, this patch changes the device management for the ALSA sequencer device using the struct device directly. Reviewed-by: Jaroslav Kysela <perex@perex.cz> Signed-off-by: Takashi Iwai <tiwai@suse.de>
This commit is contained in:
parent
89da061f0a
commit
5205388d2d
|
@ -2571,6 +2571,8 @@ static const struct file_operations snd_seq_f_ops =
|
|||
.compat_ioctl = snd_seq_ioctl_compat,
|
||||
};
|
||||
|
||||
static struct device seq_dev;
|
||||
|
||||
/*
|
||||
* register sequencer device
|
||||
*/
|
||||
|
@ -2578,12 +2580,18 @@ int __init snd_sequencer_device_init(void)
|
|||
{
|
||||
int err;
|
||||
|
||||
snd_device_initialize(&seq_dev, NULL);
|
||||
dev_set_name(&seq_dev, "seq");
|
||||
|
||||
if (mutex_lock_interruptible(®ister_mutex))
|
||||
return -ERESTARTSYS;
|
||||
|
||||
if ((err = snd_register_device(SNDRV_DEVICE_TYPE_SEQUENCER, NULL, 0,
|
||||
&snd_seq_f_ops, NULL, "seq")) < 0) {
|
||||
err = snd_register_device_for_dev(SNDRV_DEVICE_TYPE_SEQUENCER, NULL, 0,
|
||||
&snd_seq_f_ops, NULL,
|
||||
&seq_dev, NULL, NULL);
|
||||
if (err < 0) {
|
||||
mutex_unlock(®ister_mutex);
|
||||
put_device(&seq_dev);
|
||||
return err;
|
||||
}
|
||||
|
||||
|
@ -2600,4 +2608,5 @@ int __init snd_sequencer_device_init(void)
|
|||
void __exit snd_sequencer_device_done(void)
|
||||
{
|
||||
snd_unregister_device(SNDRV_DEVICE_TYPE_SEQUENCER, NULL, 0);
|
||||
put_device(&seq_dev);
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue