[media] DigitalNow TinyTwin remote controller
authorAntti Palosaari <crope@iki.fi>
Fri, 22 Oct 2010 23:23:31 +0000 (20:23 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sat, 23 Oct 2010 13:11:52 +0000 (11:11 -0200)
Signed-off-by: Antti Palosaari <crope@iki.fi>
Cc: Renura Enterprises Pty Ltd <renura@digitalnow.com.au>
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/media/IR/keymaps/Makefile
drivers/media/IR/keymaps/rc-digitalnow-tinytwin.c [new file with mode: 0644]
include/media/rc-map.h

index 0b88b65..3194d39 100644 (file)
@@ -20,6 +20,7 @@ obj-$(CONFIG_RC_MAP) += rc-adstech-dvb-t-pci.o \
                        rc-cinergy.o \
                        rc-dib0700-nec.o \
                        rc-dib0700-rc5.o \
+                       rc-digitalnow-tinytwin.o \
                        rc-digittrade.o \
                        rc-dm1105-nec.o \
                        rc-dntv-live-dvb-t.o \
diff --git a/drivers/media/IR/keymaps/rc-digitalnow-tinytwin.c b/drivers/media/IR/keymaps/rc-digitalnow-tinytwin.c
new file mode 100644 (file)
index 0000000..63e469e
--- /dev/null
@@ -0,0 +1,98 @@
+/*
+ * DigitalNow TinyTwin remote controller keytable
+ *
+ * Copyright (C) 2010 Antti Palosaari <crope@iki.fi>
+ *
+ *    This program is free software; you can redistribute it and/or modify
+ *    it under the terms of the GNU General Public License as published by
+ *    the Free Software Foundation; either version 2 of the License, or
+ *    (at your option) any later version.
+ *
+ *    This program is distributed in the hope that it will be useful,
+ *    but WITHOUT ANY WARRANTY; without even the implied warranty of
+ *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+ *    GNU General Public License for more details.
+ *
+ *    You should have received a copy of the GNU General Public License along
+ *    with this program; if not, write to the Free Software Foundation, Inc.,
+ *    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
+ */
+
+#include <media/rc-map.h>
+
+static struct ir_scancode digitalnow_tinytwin[] = {
+       { 0x0000, KEY_MUTE },            /* [symbol speaker] */
+       { 0x0001, KEY_VOLUMEUP },
+       { 0x0002, KEY_POWER2 },          /* TV [power button] */
+       { 0x0003, KEY_2 },
+       { 0x0004, KEY_3 },
+       { 0x0005, KEY_4 },
+       { 0x0006, KEY_6 },
+       { 0x0007, KEY_7 },
+       { 0x0008, KEY_8 },
+       { 0x0009, KEY_NUMERIC_STAR },    /* [*] */
+       { 0x000a, KEY_0 },
+       { 0x000b, KEY_NUMERIC_POUND },   /* [#] */
+       { 0x000c, KEY_RIGHT },           /* [right arrow] */
+       { 0x000d, KEY_HOMEPAGE },        /* [symbol home] Start */
+       { 0x000e, KEY_RED },             /* [red] Videos */
+       { 0x0010, KEY_POWER },           /* PC [power button] */
+       { 0x0011, KEY_YELLOW },          /* [yellow] Pictures */
+       { 0x0012, KEY_DOWN },            /* [down arrow] */
+       { 0x0013, KEY_GREEN },           /* [green] Music */
+       { 0x0014, KEY_CYCLEWINDOWS },    /* BACK */
+       { 0x0015, KEY_FAVORITES },       /* MORE */
+       { 0x0016, KEY_UP },              /* [up arrow] */
+       { 0x0017, KEY_LEFT },            /* [left arrow] */
+       { 0x0018, KEY_OK },              /* OK */
+       { 0x0019, KEY_BLUE },            /* [blue] MyTV */
+       { 0x001a, KEY_REWIND },          /* REW [<<] */
+       { 0x001b, KEY_PLAY },            /* PLAY */
+       { 0x001c, KEY_5 },
+       { 0x001d, KEY_9 },
+       { 0x001e, KEY_VOLUMEDOWN },
+       { 0x001f, KEY_1 },
+       { 0x0040, KEY_STOP },            /* STOP */
+       { 0x0042, KEY_PAUSE },           /* PAUSE */
+       { 0x0043, KEY_SCREEN },          /* Aspect */
+       { 0x0044, KEY_FORWARD },         /* FWD [>>] */
+       { 0x0045, KEY_NEXT },            /* SKIP */
+       { 0x0048, KEY_RECORD },          /* RECORD */
+       { 0x0049, KEY_VIDEO },           /* RTV */
+       { 0x004a, KEY_EPG },             /* Guide */
+       { 0x004b, KEY_CHANNELUP },
+       { 0x004c, KEY_HELP },            /* Help */
+       { 0x004d, KEY_RADIO },           /* Radio */
+       { 0x004f, KEY_CHANNELDOWN },
+       { 0x0050, KEY_DVD },             /* DVD */
+       { 0x0051, KEY_AUDIO },           /* Audio */
+       { 0x0052, KEY_TITLE },           /* Title */
+       { 0x0053, KEY_NEW },             /* [symbol PIP?] */
+       { 0x0057, KEY_MENU },            /* Mouse */
+       { 0x005a, KEY_PREVIOUS },        /* REPLAY */
+};
+
+static struct rc_keymap digitalnow_tinytwin_map = {
+       .map = {
+               .scan    = digitalnow_tinytwin,
+               .size    = ARRAY_SIZE(digitalnow_tinytwin),
+               .ir_type = IR_TYPE_NEC,
+               .name    = RC_MAP_DIGITALNOW_TINYTWIN,
+       }
+};
+
+static int __init init_rc_map_digitalnow_tinytwin(void)
+{
+       return ir_register_map(&digitalnow_tinytwin_map);
+}
+
+static void __exit exit_rc_map_digitalnow_tinytwin(void)
+{
+       ir_unregister_map(&digitalnow_tinytwin_map);
+}
+
+module_init(init_rc_map_digitalnow_tinytwin)
+module_exit(exit_rc_map_digitalnow_tinytwin)
+
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Antti Palosaari <crope@iki.fi>");
index 2241655..25883cf 100644 (file)
@@ -76,6 +76,7 @@ void rc_map_init(void);
 #define RC_MAP_CINERGY                   "rc-cinergy"
 #define RC_MAP_DIB0700_NEC_TABLE         "rc-dib0700-nec"
 #define RC_MAP_DIB0700_RC5_TABLE         "rc-dib0700-rc5"
+#define RC_MAP_DIGITALNOW_TINYTWIN       "rc-digitalnow-tinytwin"
 #define RC_MAP_DIGITTRADE                "rc-digittrade"
 #define RC_MAP_DM1105_NEC                "rc-dm1105-nec"
 #define RC_MAP_DNTV_LIVE_DVBT_PRO        "rc-dntv-live-dvbt-pro"