summaryrefslogtreecommitdiff
path: root/linux/drivers/media/dvb
diff options
context:
space:
mode:
Diffstat (limited to 'linux/drivers/media/dvb')
-rw-r--r--linux/drivers/media/dvb/dvb-usb/dtt200u.c25
1 files changed, 21 insertions, 4 deletions
diff --git a/linux/drivers/media/dvb/dvb-usb/dtt200u.c b/linux/drivers/media/dvb/dvb-usb/dtt200u.c
index d64214d7a..d57ad0499 100644
--- a/linux/drivers/media/dvb/dvb-usb/dtt200u.c
+++ b/linux/drivers/media/dvb/dvb-usb/dtt200u.c
@@ -42,11 +42,26 @@ static int dtt200u_pid_filter(struct dvb_usb_device *d, int index, u16 pid, int
}
/* remote control */
-
+/* key list for the tiny remote control (Yakumo, don't know about the others) */
struct dvb_usb_nec_rc_key dtt200u_rc_keys[] = {
- { 0x00, 0xff, 0x03, KEY_1 },
- { 0x00, 0xff, 0x01, KEY_2 },
- { 0x00, 0xff, 0x06, KEY_3 },
+ { 0x80, 0x7f, 0x01, KEY_MUTE },
+ { 0x80, 0x7f, 0x02, KEY_CHANNELDOWN },
+ { 0x80, 0x7f, 0x03, KEY_VOLUMEDOWN },
+ { 0x80, 0x7f, 0x04, KEY_1 },
+ { 0x80, 0x7f, 0x05, KEY_2 },
+ { 0x80, 0x7f, 0x06, KEY_3 },
+ { 0x80, 0x7f, 0x07, KEY_4 },
+ { 0x80, 0x7f, 0x08, KEY_5 },
+ { 0x80, 0x7f, 0x09, KEY_6 },
+ { 0x80, 0x7f, 0x0a, KEY_7 },
+ { 0x00, 0xff, 0x0c, KEY_ZOOM },
+ { 0x80, 0x7f, 0x0d, KEY_0 },
+ { 0x00, 0xff, 0x0e, KEY_SELECT },
+ { 0x80, 0x7f, 0x12, KEY_POWER },
+ { 0x80, 0x7f, 0x1a, KEY_CHANNELUP },
+ { 0x80, 0x7f, 0x1b, KEY_8 },
+ { 0x80, 0x7f, 0x1e, KEY_VOLUMEUP },
+ { 0x80, 0x7f, 0x1f, KEY_9 },
};
static int dtt200u_rc_init(struct dvb_usb_device *d)
@@ -63,6 +78,8 @@ static int dtt200u_rc_query(struct dvb_usb_device *d, u32 *event, int *state)
dvb_usb_generic_rw(d,&cmd,1,key,5);
dvb_usb_nec_rc_key_to_event(d,dtt200u_rc_keys,sizeof(dtt200u_rc_keys)/sizeof(struct dvb_usb_nec_rc_key),
key,event,state);
+ if (key[0] != 0)
+ deb_info("key: %x %x %x %x %x\n",key[0],key[1],key[2],key[3],key[4]);
return 0;
}