mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-11-18 09:44:18 +08:00
V4L/DVB (13068): radio-mr800: remove device initialization from open/close
Remove device initialization from open/close. Signed-off-by: David Ellingsworth <david@identd.dyndns.org> Acked-by: Alexey Klimov <klimov.linux@gmail.com> Signed-off-by: Douglas Schilling Landgraf <dougsland@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
This commit is contained in:
parent
4e3616576e
commit
8a7cd16f1f
@ -136,7 +136,6 @@ struct amradio_device {
|
|||||||
struct mutex lock; /* buffer locking */
|
struct mutex lock; /* buffer locking */
|
||||||
int curfreq;
|
int curfreq;
|
||||||
int stereo;
|
int stereo;
|
||||||
int users;
|
|
||||||
int muted;
|
int muted;
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -493,26 +492,6 @@ static int usb_amradio_open(struct file *file)
|
|||||||
}
|
}
|
||||||
|
|
||||||
file->private_data = radio;
|
file->private_data = radio;
|
||||||
radio->users = 1;
|
|
||||||
radio->muted = 1;
|
|
||||||
|
|
||||||
retval = amradio_set_mute(radio, AMRADIO_START);
|
|
||||||
if (retval < 0) {
|
|
||||||
amradio_dev_warn(&radio->videodev.dev,
|
|
||||||
"radio did not start up properly\n");
|
|
||||||
radio->users = 0;
|
|
||||||
goto unlock;
|
|
||||||
}
|
|
||||||
|
|
||||||
retval = amradio_set_stereo(radio, WANT_STEREO);
|
|
||||||
if (retval < 0)
|
|
||||||
amradio_dev_warn(&radio->videodev.dev,
|
|
||||||
"set stereo failed\n");
|
|
||||||
|
|
||||||
retval = amradio_setfreq(radio, radio->curfreq);
|
|
||||||
if (retval < 0)
|
|
||||||
amradio_dev_warn(&radio->videodev.dev,
|
|
||||||
"set frequency failed\n");
|
|
||||||
|
|
||||||
unlock:
|
unlock:
|
||||||
mutex_unlock(&radio->lock);
|
mutex_unlock(&radio->lock);
|
||||||
@ -527,19 +506,9 @@ static int usb_amradio_close(struct file *file)
|
|||||||
|
|
||||||
mutex_lock(&radio->lock);
|
mutex_lock(&radio->lock);
|
||||||
|
|
||||||
if (!radio->usbdev) {
|
if (!radio->usbdev)
|
||||||
retval = -EIO;
|
retval = -EIO;
|
||||||
goto unlock;
|
|
||||||
}
|
|
||||||
|
|
||||||
radio->users = 0;
|
|
||||||
|
|
||||||
retval = amradio_set_mute(radio, AMRADIO_STOP);
|
|
||||||
if (retval < 0)
|
|
||||||
amradio_dev_warn(&radio->videodev.dev,
|
|
||||||
"amradio_stop failed\n");
|
|
||||||
|
|
||||||
unlock:
|
|
||||||
mutex_unlock(&radio->lock);
|
mutex_unlock(&radio->lock);
|
||||||
return retval;
|
return retval;
|
||||||
}
|
}
|
||||||
@ -670,10 +639,10 @@ static int usb_amradio_probe(struct usb_interface *intf,
|
|||||||
radio->videodev.ioctl_ops = &usb_amradio_ioctl_ops;
|
radio->videodev.ioctl_ops = &usb_amradio_ioctl_ops;
|
||||||
radio->videodev.release = usb_amradio_video_device_release;
|
radio->videodev.release = usb_amradio_video_device_release;
|
||||||
|
|
||||||
radio->users = 0;
|
|
||||||
radio->usbdev = interface_to_usbdev(intf);
|
radio->usbdev = interface_to_usbdev(intf);
|
||||||
radio->curfreq = 95.16 * FREQ_MUL;
|
radio->curfreq = 95.16 * FREQ_MUL;
|
||||||
radio->stereo = -1;
|
radio->stereo = -1;
|
||||||
|
radio->muted = 1;
|
||||||
|
|
||||||
mutex_init(&radio->lock);
|
mutex_init(&radio->lock);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user