Hi, all,
This patch fixes the IR key table for the newly supported Pinnacle PCTV
HD 800i.
Cheers,
Chaogui Zhang
--------------------
Signed-off-by: Chaogui Zhang <[EMAIL PROTECTED]
diff -r b4a1b3409bc8 linux/drivers/media/common/ir-keymaps.c
--- a/linux/drivers/media/common/ir-keymaps.c Mon Jan 14 22:33:37 2008 -0500
+++ b/linux/drivers/media/common/ir-keymaps.c Wed Jan 16 23:05:50 2008 -0500
@@ -1898,3 +1898,39 @@ IR_KEYTAB_TYPE ir_codes_fusionhdtv_mce[I
};
EXPORT_SYMBOL_GPL(ir_codes_fusionhdtv_mce);
+
+/* Pinnacle PCTV HD 800i mini remote */
+IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE] = {
+
+ [ 0x0f ] = KEY_1,
+ [ 0x15 ] = KEY_2,
+ [ 0x10 ] = KEY_3,
+ [ 0x18 ] = KEY_4,
+ [ 0x1b ] = KEY_5,
+ [ 0x1e ] = KEY_6,
+ [ 0x11 ] = KEY_7,
+ [ 0x21 ] = KEY_8,
+ [ 0x12 ] = KEY_9,
+ [ 0x27 ] = KEY_0,
+
+ [ 0x24 ] = KEY_ZOOM,
+ [ 0x2a ] = KEY_SUBTITLE,
+
+ [ 0x00 ] = KEY_MUTE,
+ [ 0x01 ] = KEY_ENTER, /* Pinnacle Logo */
+ [ 0x39 ] = KEY_POWER,
+
+ [ 0x03 ] = KEY_VOLUMEUP,
+ [ 0x09 ] = KEY_VOLUMEDOWN,
+ [ 0x06 ] = KEY_CHANNELUP,
+ [ 0x0c ] = KEY_CHANNELDOWN,
+
+ [ 0x2d ] = KEY_REWIND,
+ [ 0x30 ] = KEY_PLAYPAUSE,
+ [ 0x33 ] = KEY_FASTFORWARD,
+ [ 0x3c ] = KEY_STOP,
+ [ 0x36 ] = KEY_RECORD,
+ [ 0x3f ] = KEY_EPG, /* Labeled "?" */
+};
+
+EXPORT_SYMBOL_GPL(ir_codes_pinnacle_pctv_hd);
diff -r b4a1b3409bc8 linux/drivers/media/video/cx88/cx88-input.c
--- a/linux/drivers/media/video/cx88/cx88-input.c Mon Jan 14 22:33:37
2008 -0500
+++ b/linux/drivers/media/video/cx88/cx88-input.c Wed Jan 16 23:21:02
2008 -0500
@@ -237,7 +237,6 @@ int cx88_ir_init(struct cx88_core *core,
case CX88_BOARD_HAUPPAUGE_NOVASPLUS_S1:
case CX88_BOARD_HAUPPAUGE_HVR1100:
case CX88_BOARD_HAUPPAUGE_HVR3000:
- case CX88_BOARD_PINNACLE_PCTV_HD_800i:
ir_codes = ir_codes_hauppauge_new;
ir_type = IR_TYPE_RC5;
ir->sampling = 1;
@@ -318,6 +317,11 @@ int cx88_ir_init(struct cx88_core *core,
ir->gpio_addr = MO_GP0_IO;
ir->mask_keycode = 0xfa;
ir->polling = 50; /* ms */
+ break;
+ case CX88_BOARD_PINNACLE_PCTV_HD_800i:
+ ir_codes = ir_codes_pinnacle_pctv_hd;
+ ir_type = IR_TYPE_RC5;
+ ir->sampling = 1;
break;
}
diff -r b4a1b3409bc8 linux/include/media/ir-common.h
--- a/linux/include/media/ir-common.h Mon Jan 14 22:33:37 2008 -0500
+++ b/linux/include/media/ir-common.h Wed Jan 16 23:06:36 2008 -0500
@@ -140,6 +140,7 @@ extern IR_KEYTAB_TYPE ir_codes_encore_en
extern IR_KEYTAB_TYPE ir_codes_encore_enltv[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_tt_1500[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_fusionhdtv_mce[IR_KEYTAB_SIZE];
+extern IR_KEYTAB_TYPE ir_codes_pinnacle_pctv_hd[IR_KEYTAB_SIZE];
#endif
_______________________________________________
linux-dvb mailing list
[email protected]
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb