summaryrefslogtreecommitdiff
path: root/drivers/media/dvb/dvb-usb/dib0700_devices.c
diff options
context:
space:
mode:
authorJanne Grunau <janne-dvb@grunau.be>2007-07-31 19:45:13 -0300
committerMauro Carvalho Chehab <mchehab@infradead.org>2007-10-09 22:04:05 -0300
commit89f4267d6fa96cb3db053d5183558c94ad5f46e5 (patch)
treef6eaa54326eb6a09617e30d6f128af1a289c352b /drivers/media/dvb/dvb-usb/dib0700_devices.c
parent8d99996b0942ff566c62602d83ac2c13521bbe40 (diff)
V4L/DVB (5964): Fixed remote control for dib0700 with new firmware
The new firmware returns the data of the REQUEST_POLL_RC request in reversed order. The default is RC5, but it can be adjusted using a module parameter. Signed-off-by: Janne Grunau <janne-dvb@grunau.be> Signed-off-by: Patrick Boettcher <pb@linuxtv.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
Diffstat (limited to 'drivers/media/dvb/dvb-usb/dib0700_devices.c')
-rw-r--r--drivers/media/dvb/dvb-usb/dib0700_devices.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/media/dvb/dvb-usb/dib0700_devices.c b/drivers/media/dvb/dvb-usb/dib0700_devices.c
index 0eca0fc75327..4a3c5467d7e0 100644
--- a/drivers/media/dvb/dvb-usb/dib0700_devices.c
+++ b/drivers/media/dvb/dvb-usb/dib0700_devices.c
@@ -275,19 +275,19 @@ static int dib0700_rc_query(struct dvb_usb_device *d, u32 *event, int *state)
i=dib0700_ctrl_rd(d,rc_request,2,key,4);
if (i<=0) {
err("RC Query Failed");
- return 0;
+ return -1;
}
if (key[0]==0 && key[1]==0 && key[2]==0 && key[3]==0) return 0;
- if (key[1]!=st->rc_toggle) {
+ if (key[3-1]!=st->rc_toggle) {
for (i=0;i<d->props.rc_key_map_size; i++) {
- if (keymap[i].custom == key[2] && keymap[i].data == key[3]) {
+ if (keymap[i].custom == key[3-2] && keymap[i].data == key[3-3]) {
*event = keymap[i].event;
*state = REMOTE_KEY_PRESSED;
- st->rc_toggle=key[1];
+ st->rc_toggle=key[3-1];
return 0;
}
}
- err("Unknown remote controller key : %2X %2X",(int)key[2],(int)key[3]);
+ err("Unknown remote controller key : %2X %2X",(int)key[3-2],(int)key[3-3]);
}
return 0;
}