summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb/b2c2/flexcop-i2c.c
diff options
context:
space:
mode:
authorMauro Carvalho Chehab <mchehab@redhat.com>2008-12-08 19:14:00 -0200
committerMauro Carvalho Chehab <mchehab@redhat.com>2008-12-08 19:14:00 -0200
commit13500b89ca7818b9e7259d2451069557fd5ec25d (patch)
tree0a09fec147171cb69a633a2529bcba7d17d78458 /linux/drivers/media/dvb/b2c2/flexcop-i2c.c
parente5d82c47206f8bd3ab34f728d8861a816f246d8a (diff)
parentb4b33fdc2da973f70e7086a90704f32007250972 (diff)
downloadmediapointer-dvb-s2-13500b89ca7818b9e7259d2451069557fd5ec25d.tar.gz
mediapointer-dvb-s2-13500b89ca7818b9e7259d2451069557fd5ec25d.tar.bz2
merge: http://linuxtv.org/hg/~gliakhovetski/v4l-dvb
From: Mauro Carvalho Chehab <mchehab@redhat.com> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
Diffstat (limited to 'linux/drivers/media/dvb/b2c2/flexcop-i2c.c')
-rw-r--r--linux/drivers/media/dvb/b2c2/flexcop-i2c.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/linux/drivers/media/dvb/b2c2/flexcop-i2c.c b/linux/drivers/media/dvb/b2c2/flexcop-i2c.c
index 05635c453..01d27613f 100644
--- a/linux/drivers/media/dvb/b2c2/flexcop-i2c.c
+++ b/linux/drivers/media/dvb/b2c2/flexcop-i2c.c
@@ -47,9 +47,13 @@ static int flexcop_i2c_read4(struct flexcop_i2c_adapter *i2c,
int len = r100.tw_sm_c_100.total_bytes, /* remember total_bytes is buflen-1 */
ret;
- r100.tw_sm_c_100.no_base_addr_ack_error = i2c->no_base_addr;
ret = flexcop_i2c_operation(i2c->fc, &r100);
if (ret != 0) {
+ deb_i2c("Retrying operation\n");
+ r100.tw_sm_c_100.no_base_addr_ack_error = i2c->no_base_addr;
+ ret = flexcop_i2c_operation(i2c->fc, &r100);
+ }
+ if (ret != 0) {
deb_i2c("read failed. %d\n", ret);
return ret;
}