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 == 0xffffffff) { /* 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

Reply via email to