aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/media/radio/radio-mr800.c
diff options
context:
space:
mode:
authorHans Verkuil <hans.verkuil@cisco.com>2012-05-27 06:25:06 -0400
committerMauro Carvalho Chehab <mchehab@redhat.com>2012-06-18 19:52:51 -0400
commit54f6019b5860ec062d1149b3a97a5a63ad3e4da9 (patch)
tree87d4ed19bd81a3357bcfab4a37148d1a82f945e5 /drivers/media/radio/radio-mr800.c
parente4cca4edbce693238ba4d75269db082f34da48bb (diff)
[media] S_HW_FREQ_SEEK: set capability flags and return ENODATA instead of EAGAIN
Set the new capability flags in G_TUNER and return ENODATA if no channels were found. Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'drivers/media/radio/radio-mr800.c')
-rw-r--r--drivers/media/radio/radio-mr800.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/media/radio/radio-mr800.c b/drivers/media/radio/radio-mr800.c
index 94cb6bc690f5..3182b26d6efa 100644
--- a/drivers/media/radio/radio-mr800.c
+++ b/drivers/media/radio/radio-mr800.c
@@ -295,7 +295,8 @@ static int vidioc_g_tuner(struct file *file, void *priv,
295 v->type = V4L2_TUNER_RADIO; 295 v->type = V4L2_TUNER_RADIO;
296 v->rangelow = FREQ_MIN * FREQ_MUL; 296 v->rangelow = FREQ_MIN * FREQ_MUL;
297 v->rangehigh = FREQ_MAX * FREQ_MUL; 297 v->rangehigh = FREQ_MAX * FREQ_MUL;
298 v->capability = V4L2_TUNER_CAP_LOW | V4L2_TUNER_CAP_STEREO; 298 v->capability = V4L2_TUNER_CAP_LOW | V4L2_TUNER_CAP_STEREO |
299 V4L2_TUNER_CAP_HWSEEK_WRAP;
299 v->rxsubchans = is_stereo ? V4L2_TUNER_SUB_STEREO : V4L2_TUNER_SUB_MONO; 300 v->rxsubchans = is_stereo ? V4L2_TUNER_SUB_STEREO : V4L2_TUNER_SUB_MONO;
300 v->audmode = radio->stereo ? 301 v->audmode = radio->stereo ?
301 V4L2_TUNER_MODE_STEREO : V4L2_TUNER_MODE_MONO; 302 V4L2_TUNER_MODE_STEREO : V4L2_TUNER_MODE_MONO;
@@ -372,7 +373,7 @@ static int vidioc_s_hw_freq_seek(struct file *file, void *priv,
372 timeout = jiffies + msecs_to_jiffies(30000); 373 timeout = jiffies + msecs_to_jiffies(30000);
373 for (;;) { 374 for (;;) {
374 if (time_after(jiffies, timeout)) { 375 if (time_after(jiffies, timeout)) {
375 retval = -EAGAIN; 376 retval = -ENODATA;
376 break; 377 break;
377 } 378 }
378 if (schedule_timeout_interruptible(msecs_to_jiffies(10))) { 379 if (schedule_timeout_interruptible(msecs_to_jiffies(10))) {