diff options
author | Nicholas Mc Guire <hofrat@osadl.org> | 2015-02-05 03:56:42 -0500 |
---|---|---|
committer | Mauro Carvalho Chehab <mchehab@osg.samsung.com> | 2015-03-02 14:50:42 -0500 |
commit | c973f76e7e931593825280861b9ede522b67f9af (patch) | |
tree | 5ddebf5aa46b478bdbe99548563673a03e3ffe7d | |
parent | daa939db21108c951765ce1089d423fd90f8a447 (diff) |
[media] media: radio: handle timeouts
Add handling for timeout case.
Signed-off-by: Nicholas Mc Guire <hofrat@osadl.org>
Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
-rw-r--r-- | drivers/media/radio/radio-wl1273.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/media/radio/radio-wl1273.c b/drivers/media/radio/radio-wl1273.c index 571c7f6de439..a93f681aa9d6 100644 --- a/drivers/media/radio/radio-wl1273.c +++ b/drivers/media/radio/radio-wl1273.c | |||
@@ -828,9 +828,12 @@ static int wl1273_fm_set_seek(struct wl1273_device *radio, | |||
828 | if (r) | 828 | if (r) |
829 | goto out; | 829 | goto out; |
830 | 830 | ||
831 | /* wait for the FR IRQ */ | ||
831 | wait_for_completion_timeout(&radio->busy, msecs_to_jiffies(1000)); | 832 | wait_for_completion_timeout(&radio->busy, msecs_to_jiffies(1000)); |
832 | if (!(radio->irq_received & WL1273_BL_EVENT)) | 833 | if (!(radio->irq_received & WL1273_BL_EVENT)) { |
834 | r = -ETIMEDOUT; | ||
833 | goto out; | 835 | goto out; |
836 | } | ||
834 | 837 | ||
835 | radio->irq_received &= ~WL1273_BL_EVENT; | 838 | radio->irq_received &= ~WL1273_BL_EVENT; |
836 | 839 | ||
@@ -856,7 +859,9 @@ static int wl1273_fm_set_seek(struct wl1273_device *radio, | |||
856 | if (r) | 859 | if (r) |
857 | goto out; | 860 | goto out; |
858 | 861 | ||
859 | wait_for_completion_timeout(&radio->busy, msecs_to_jiffies(1000)); | 862 | /* wait for the FR IRQ */ |
863 | if (!wait_for_completion_timeout(&radio->busy, msecs_to_jiffies(1000))) | ||
864 | r = -ETIMEDOUT; | ||
860 | out: | 865 | out: |
861 | dev_dbg(radio->dev, "%s: Err: %d\n", __func__, r); | 866 | dev_dbg(radio->dev, "%s: Err: %d\n", __func__, r); |
862 | return r; | 867 | return r; |