summaryrefslogtreecommitdiff
path: root/linux/drivers/media
diff options
context:
space:
mode:
authorAntti Palosaari <crope@iki.fi>2009-01-20 19:56:20 +0200
committerAntti Palosaari <crope@iki.fi>2009-01-20 19:56:20 +0200
commit942a41fc50cf6a55b959fd4470ce7a1ace120dfb (patch)
tree22841c6821986e63206d2d7b8a6deeb0627c6556 /linux/drivers/media
parent35aac7250adaa130140a59e5681f0ee72bb706c2 (diff)
downloadmediapointer-dvb-s2-942a41fc50cf6a55b959fd4470ce7a1ace120dfb.tar.gz
mediapointer-dvb-s2-942a41fc50cf6a55b959fd4470ce7a1ace120dfb.tar.bz2
af9015: bug fix: stick does not work always when plugged
From: Antti Palosaari <crope@iki.fi> First control messages to the stick timeouts very often due to probable hw bug. Repeat first message few times if it fails as workaround. Priority: high Signed-off-by: Antti Palosaari <crope@iki.fi>
Diffstat (limited to 'linux/drivers/media')
-rw-r--r--linux/drivers/media/dvb/dvb-usb/af9015.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/linux/drivers/media/dvb/dvb-usb/af9015.c b/linux/drivers/media/dvb/dvb-usb/af9015.c
index af3e66a60..b1f231781 100644
--- a/linux/drivers/media/dvb/dvb-usb/af9015.c
+++ b/linux/drivers/media/dvb/dvb-usb/af9015.c
@@ -697,7 +697,12 @@ static int af9015_read_config(struct usb_device *udev)
/* IR remote controller */
req.addr = AF9015_EEPROM_IR_MODE;
- ret = af9015_rw_udev(udev, &req);
+ /* first message will timeout often due to possible hw bug */
+ for (i = 0; i < 4; i++) {
+ ret = af9015_rw_udev(udev, &req);
+ if (!ret)
+ break;
+ }
if (ret)
goto error;
deb_info("%s: IR mode:%d\n", __func__, val);