aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/radio/radio-typhoon.c
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2010-12-17 09:28:17 -0800
committerLinus Torvalds <torvalds@linux-foundation.org>2010-12-17 09:28:17 -0800
commit8efc1a1a22e6daf9d669e6095460c77df683c325 (patch)
treeb7d74f31bb3bee58df82fe058cbc061e659b4e88 /drivers/media/radio/radio-typhoon.c
parent74280817e5013af83089a5dd511f6fb3b2362e09 (diff)
parent673eb9ff33e26ee6f4278cdab06749aef1bbef5b (diff)
Merge branch 'bkl_removal' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6
* 'bkl_removal' of git://git.kernel.org/pub/scm/linux/kernel/git/mchehab/linux-2.6: [media] uvcvideo: Convert to unlocked_ioctl [media] uvcvideo: Lock stream mutex when accessing format-related information [media] uvcvideo: Move mmap() handler to uvc_queue.c [media] uvcvideo: Move mutex lock/unlock inside uvc_free_buffers [media] uvcvideo: Lock controls mutex when querying menus [media] v4l2-dev: fix race condition [media] V4L: improve the BKL replacement heuristic [media] v4l2-dev: use mutex_lock_interruptible instead of plain mutex_lock [media] cx18: convert to unlocked_ioctl [media] radio-timb: convert to unlocked_ioctl [media] sh_vou: convert to unlocked_ioctl [media] cafe_ccic: replace ioctl by unlocked_ioctl [media] et61x251_core: trivial conversion to unlocked_ioctl [media] sn9c102: convert to unlocked_ioctl [media] BKL: trivial ioctl -> unlocked_ioctl video driver conversions [media] typhoon: convert to unlocked_ioctl [media] si4713: convert to unlocked_ioctl [media] tea5764: convert to unlocked_ioctl [media] cadet: use unlocked_ioctl [media] BKL: trivial BKL removal from V4L2 radio drivers
Diffstat (limited to 'drivers/media/radio/radio-typhoon.c')
-rw-r--r--drivers/media/radio/radio-typhoon.c16
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/media/radio/radio-typhoon.c b/drivers/media/radio/radio-typhoon.c
index b1f630527dc1..8dbbf08f2207 100644
--- a/drivers/media/radio/radio-typhoon.c
+++ b/drivers/media/radio/radio-typhoon.c
@@ -317,7 +317,7 @@ static int vidioc_log_status(struct file *file, void *priv)
static const struct v4l2_file_operations typhoon_fops = {
.owner = THIS_MODULE,
- .ioctl = video_ioctl2,
+ .unlocked_ioctl = video_ioctl2,
};
static const struct v4l2_ioctl_ops typhoon_ioctl_ops = {
@@ -344,18 +344,18 @@ static int __init typhoon_init(void)
strlcpy(v4l2_dev->name, "typhoon", sizeof(v4l2_dev->name));
dev->io = io;
- dev->curfreq = dev->mutefreq = mutefreq;
if (dev->io == -1) {
v4l2_err(v4l2_dev, "You must set an I/O address with io=0x316 or io=0x336\n");
return -EINVAL;
}
- if (dev->mutefreq < 87000 || dev->mutefreq > 108500) {
+ if (mutefreq < 87000 || mutefreq > 108500) {
v4l2_err(v4l2_dev, "You must set a frequency (in kHz) used when muting the card,\n");
v4l2_err(v4l2_dev, "e.g. with \"mutefreq=87500\" (87000 <= mutefreq <= 108500)\n");
return -EINVAL;
}
+ dev->curfreq = dev->mutefreq = mutefreq << 4;
mutex_init(&dev->lock);
if (!request_region(dev->io, 8, "typhoon")) {
@@ -378,17 +378,17 @@ static int __init typhoon_init(void)
dev->vdev.ioctl_ops = &typhoon_ioctl_ops;
dev->vdev.release = video_device_release_empty;
video_set_drvdata(&dev->vdev, dev);
+
+ /* mute card - prevents noisy bootups */
+ typhoon_mute(dev);
+
if (video_register_device(&dev->vdev, VFL_TYPE_RADIO, radio_nr) < 0) {
v4l2_device_unregister(&dev->v4l2_dev);
release_region(dev->io, 8);
return -EINVAL;
}
v4l2_info(v4l2_dev, "port 0x%x.\n", dev->io);
- v4l2_info(v4l2_dev, "mute frequency is %lu kHz.\n", dev->mutefreq);
- dev->mutefreq <<= 4;
-
- /* mute card - prevents noisy bootups */
- typhoon_mute(dev);
+ v4l2_info(v4l2_dev, "mute frequency is %lu kHz.\n", mutefreq);
return 0;
}

Privacy Policy