changeset: 11251:58f9585b7d94
tag: tip
user:root
date:Sat Mar 28 15:19:20 2009 +0100
files: linux/drivers/media/common/ir-keymaps.c
linux/drivers/media/video/cx88/cx88-input.c linux/include/media/ir-common.h
description:
IR support for TeVii S460
From: Bernd Strauss no...@web.de
The remote control that comes with this card doesn't work out of the box.
This patch fixes that. Works with LIRC and /dev/input/eventX.
Priority: normal
Signed-off-by: Bernd Strauss no...@web.de
diff -r 2adf4a837334 linux/drivers/media/common/ir-keymaps.c
--- a/linux/drivers/media/common/ir-keymaps.c Sat Mar 28 06:55:35 2009 -0300
+++ b/linux/drivers/media/common/ir-keymaps.c Sat Mar 28 15:15:04 2009 +0100
@@ -2800,3 +2800,59 @@
[0x1b] = KEY_B, /*recall*/
};
EXPORT_SYMBOL_GPL(ir_codes_dm1105_nec);
+
+/* TeVii S460 DVB-S/S2
+ Bernd Strauss no...@web.de
+*/
+IR_KEYTAB_TYPE ir_codes_tevii_s460[IR_KEYTAB_SIZE] = {
+ [0x0a] = KEY_POWER,
+ [0x0c] = KEY_MUTE,
+ [0x11] = KEY_1,
+ [0x12] = KEY_2,
+ [0x13] = KEY_3,
+ [0x14] = KEY_4,
+ [0x15] = KEY_5,
+ [0x16] = KEY_6,
+ [0x17] = KEY_7,
+ [0x18] = KEY_8,
+ [0x19] = KEY_9,
+ [0x1a] = KEY_LAST, /* 'recall' / 'event info' */
+ [0x10] = KEY_0,
+ [0x1b] = KEY_FAVORITES,
+
+ [0x09] = KEY_VOLUMEUP,
+ [0x0f] = KEY_VOLUMEDOWN,
+ [0x05] = KEY_TUNER, /* 'live mode' */
+ [0x07] = KEY_PVR, /* 'play mode' */
+ [0x08] = KEY_CHANNELUP,
+ [0x06] = KEY_CHANNELDOWN,
+ [0x00] = KEY_UP,
+ [0x03] = KEY_LEFT,
+ [0x1f] = KEY_OK,
+ [0x02] = KEY_RIGHT,
+ [0x01] = KEY_DOWN,
+ [0x1c] = KEY_MENU,
+ [0x1d] = KEY_BACK,
+
+ [0x40] = KEY_PLAYPAUSE,
+ [0x1e] = KEY_REWIND,/* '' */
+ [0x4d] = KEY_FASTFORWARD, /* '' */
+ [0x44] = KEY_EPG,
+ [0x04] = KEY_RECORD,
+ [0x0b] = KEY_TIME, /* 'timer' */
+ [0x0e] = KEY_OPEN,
+ [0x4c] = KEY_INFO,
+ [0x41] = KEY_AB,/* 'A/B' */
+ [0x43] = KEY_AUDIO,
+ [0x45] = KEY_SUBTITLE,
+ [0x4a] = KEY_LIST,
+ [0x46] = KEY_F1,/* 'F1' / 'satellite' */
+ [0x47] = KEY_F2,/* 'F2' / 'provider' */
+ [0x5e] = KEY_F3,/* 'F3' / 'transp' */
+ [0x5c] = KEY_F4,/* 'F4' / 'favorites' */
+ [0x52] = KEY_F5,/* 'F5' / 'all' */
+ [0x5a] = KEY_F6,
+ [0x56] = KEY_SWITCHVIDEOMODE, /* 'mon' */
+ [0x58] = KEY_ZOOM, /* 'FS' */
+};
+EXPORT_SYMBOL_GPL(ir_codes_tevii_s460);
diff -r 2adf4a837334 linux/drivers/media/video/cx88/cx88-input.c
--- a/linux/drivers/media/video/cx88/cx88-input.c Sat Mar 28 06:55:35
2009 -0300
+++ b/linux/drivers/media/video/cx88/cx88-input.c Sat Mar 28 15:15:04
2009 +0100
@@ -330,6 +330,11 @@
ir-mask_keycode = 0x7e;
ir-polling = 100; /* ms */
break;
+ case CX88_BOARD_TEVII_S460:
+ ir_codes = ir_codes_tevii_s460;
+ ir_type = IR_TYPE_PD;
+ ir-sampling = 0xff00; /* address */
+ break;
}
if (NULL == ir_codes) {
@@ -436,6 +441,7 @@
switch (core-boardnr) {
case CX88_BOARD_TERRATEC_CINERGY_1400_DVB_T1:
case CX88_BOARD_DNTV_LIVE_DVB_T_PRO:
+ case CX88_BOARD_TEVII_S460:
ircode = ir_decode_pulsedistance(ir-samples, ir-scount, 1, 4);
if (ircode == 0x) { /* decoding error */
diff -r 2adf4a837334 linux/include/media/ir-common.h
--- a/linux/include/media/ir-common.h Sat Mar 28 06:55:35 2009 -0300
+++ b/linux/include/media/ir-common.h Sat Mar 28 15:15:04 2009 +0100
@@ -162,6 +162,7 @@
extern IR_KEYTAB_TYPE ir_codes_kworld_plus_tv_analog[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_kaiomy[IR_KEYTAB_SIZE];
extern IR_KEYTAB_TYPE ir_codes_dm1105_nec[IR_KEYTAB_SIZE];
+extern IR_KEYTAB_TYPE ir_codes_tevii_s460[IR_KEYTAB_SIZE];
#endif
/*
__
Verschicken Sie SMS direkt vom Postfach aus - in alle deutschen und viele
ausländische Netze zum gleichen Preis!
https://produkte.web.de/webde_sms/sms
--
To unsubscribe from this list: send the line unsubscribe linux-media in
the body of a message to majord...@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html