summaryrefslogtreecommitdiff
path: root/linux/drivers/media/video/saa7134/saa7134-input.c
diff options
context:
space:
mode:
authorGerd Knorr <devnull@localhost>2004-11-30 11:26:38 +0000
committerGerd Knorr <devnull@localhost>2004-11-30 11:26:38 +0000
commitcec65069b7466d850408a58576dbff9a0ddbf782 (patch)
tree40933784bc061720d286b0dfd075e94a85944061 /linux/drivers/media/video/saa7134/saa7134-input.c
parentae625623c832731a551768d5137323acb1e80259 (diff)
downloadmediapointer-dvb-s2-cec65069b7466d850408a58576dbff9a0ddbf782.tar.gz
mediapointer-dvb-s2-cec65069b7466d850408a58576dbff9a0ddbf782.tar.bz2
- add new tuners.
- ir support for Compro Videomate by Michael Mellor.
Diffstat (limited to 'linux/drivers/media/video/saa7134/saa7134-input.c')
-rw-r--r--linux/drivers/media/video/saa7134/saa7134-input.c57
1 files changed, 56 insertions, 1 deletions
diff --git a/linux/drivers/media/video/saa7134/saa7134-input.c b/linux/drivers/media/video/saa7134/saa7134-input.c
index 54d42d1f0..980db6fe1 100644
--- a/linux/drivers/media/video/saa7134/saa7134-input.c
+++ b/linux/drivers/media/video/saa7134/saa7134-input.c
@@ -1,5 +1,5 @@
/*
- * $Id: saa7134-input.c,v 1.14 2004/11/22 18:10:55 kraxel Exp $
+ * $Id: saa7134-input.c,v 1.15 2004/11/30 11:26:38 kraxel Exp $
*
* handle saa7134 IR remotes via linux kernel input layer.
*
@@ -258,6 +258,55 @@ static IR_KEYTAB_TYPE md2819_codes[IR_KEYTAB_SIZE] = {
[ 17 ] = KEY_CHANNELDOWN, // CHANNEL/PAGE-
[ 49 ] = KEY_CHANNELUP // CHANNEL/PAGE+
};
+
+static IR_KEYTAB_TYPE videomate_tv_pvr_codes[IR_KEYTAB_SIZE] = {
+ [ 20 ] = KEY_MUTE,
+ [ 36 ] = KEY_ZOOM,
+
+ [ 1 ] = KEY_DVD,
+ [ 35 ] = KEY_RADIO,
+ [ 0 ] = KEY_TV,
+
+ [ 10 ] = KEY_REWIND,
+ [ 8 ] = KEY_PLAYPAUSE,
+ [ 15 ] = KEY_FORWARD,
+
+ [ 2 ] = KEY_PREVIOUS,
+ [ 7 ] = KEY_STOP,
+ [ 6 ] = KEY_NEXT,
+
+ [ 12 ] = KEY_UP,
+ [ 14 ] = KEY_DOWN,
+ [ 11 ] = KEY_LEFT,
+ [ 13 ] = KEY_RIGHT,
+ [ 17 ] = KEY_OK,
+
+ [ 3 ] = KEY_MENU,
+ [ 9 ] = KEY_SETUP,
+ [ 5 ] = KEY_VIDEO,
+ [ 34 ] = KEY_CHANNEL,
+
+ [ 18 ] = KEY_VOLUMEUP,
+ [ 21 ] = KEY_VOLUMEDOWN,
+ [ 16 ] = KEY_CHANNELUP,
+ [ 19 ] = KEY_CHANNELDOWN,
+
+ [ 4 ] = KEY_RECORD,
+
+ [ 22 ] = KEY_KP1,
+ [ 23 ] = KEY_KP2,
+ [ 24 ] = KEY_KP3,
+ [ 25 ] = KEY_KP4,
+ [ 26 ] = KEY_KP5,
+ [ 27 ] = KEY_KP6,
+ [ 28 ] = KEY_KP7,
+ [ 29 ] = KEY_KP8,
+ [ 30 ] = KEY_KP9,
+ [ 31 ] = KEY_KP0,
+
+ [ 32 ] = KEY_LANGUAGE,
+ [ 33 ] = KEY_SLEEP,
+};
/* ---------------------------------------------------------------------- */
static int build_key(struct saa7134_dev *dev)
@@ -364,6 +413,12 @@ int saa7134_input_init1(struct saa7134_dev *dev)
saa_setb(SAA7134_GPIO_GPMODE0, 0x4);
saa_setb(SAA7134_GPIO_GPSTATUS0, 0x4);
break;
+ case SAA7134_BOARD_VIDEOMATE_TV_PVR:
+ ir_codes = videomate_tv_pvr_codes;
+ mask_keycode = 0x00003F;
+ mask_keyup = 0x400000;
+ polling = 50; // ms
+ break;
}
if (NULL == ir_codes) {
printk("%s: Oops: IR config error [card=%d]\n",