Commit 3dadf91c authored by Mauro Carvalho Chehab's avatar Mauro Carvalho Chehab

[media] digitv: handle error code on RC query

There's no sense on decoding and generating a RC key code if
there was an error on the URB control message.
Signed-off-by: default avatarMauro Carvalho Chehab <mchehab@s-opensource.com>
parent aa9efbc7
...@@ -29,7 +29,9 @@ static int digitv_ctrl_msg(struct dvb_usb_device *d, ...@@ -29,7 +29,9 @@ static int digitv_ctrl_msg(struct dvb_usb_device *d,
u8 cmd, u8 vv, u8 *wbuf, int wlen, u8 *rbuf, int rlen) u8 cmd, u8 vv, u8 *wbuf, int wlen, u8 *rbuf, int rlen)
{ {
struct digitv_state *st = d->priv; struct digitv_state *st = d->priv;
int wo = (rbuf == NULL || rlen == 0); /* write-only */ int ret, wo;
wo = (rbuf == NULL || rlen == 0); /* write-only */
memset(st->sndbuf, 0, 7); memset(st->sndbuf, 0, 7);
memset(st->rcvbuf, 0, 7); memset(st->rcvbuf, 0, 7);
...@@ -40,12 +42,12 @@ static int digitv_ctrl_msg(struct dvb_usb_device *d, ...@@ -40,12 +42,12 @@ static int digitv_ctrl_msg(struct dvb_usb_device *d,
if (wo) { if (wo) {
memcpy(&st->sndbuf[3], wbuf, wlen); memcpy(&st->sndbuf[3], wbuf, wlen);
dvb_usb_generic_write(d, st->sndbuf, 7); ret = dvb_usb_generic_write(d, st->sndbuf, 7);
} else { } else {
dvb_usb_generic_rw(d, st->sndbuf, 7, st->rcvbuf, 7, 10); ret = dvb_usb_generic_rw(d, st->sndbuf, 7, st->rcvbuf, 7, 10);
memcpy(rbuf, &st->rcvbuf[3], rlen); memcpy(rbuf, &st->rcvbuf[3], rlen);
} }
return 0; return ret;
} }
/* I2C */ /* I2C */
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment