Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0+
0002 // behold-columbus.h - Keytable for behold_columbus Remote Controller
0003 //
0004 // keymap imported from ir-keymaps.c
0005 //
0006 // Copyright (c) 2010 by Mauro Carvalho Chehab
0007 
0008 #include <media/rc-map.h>
0009 #include <linux/module.h>
0010 
0011 /* Beholder Intl. Ltd. 2008
0012  * Dmitry Belimov d.belimov@google.com
0013  * Keytable is used by BeholdTV Columbus
0014  * The "ascii-art picture" below (in comments, first row
0015  * is the keycode in hex, and subsequent row(s) shows
0016  * the button labels (several variants when appropriate)
0017  * helps to decide which keycodes to assign to the buttons.
0018  */
0019 
0020 static struct rc_map_table behold_columbus[] = {
0021 
0022     /*  0x13   0x11   0x1C   0x12  *
0023      *  Mute  Source  TV/FM  Power *
0024      *                             */
0025 
0026     { 0x13, KEY_MUTE },
0027     { 0x11, KEY_VIDEO },
0028     { 0x1C, KEY_TUNER },    /* KEY_TV/KEY_RADIO */
0029     { 0x12, KEY_POWER },
0030 
0031     /*  0x01    0x02    0x03  0x0D    *
0032      *   1       2       3   Stereo   *
0033      *                *
0034      *  0x04    0x05    0x06  0x19    *
0035      *   4       5       6   Snapshot *
0036      *                *
0037      *  0x07    0x08    0x09  0x10    *
0038      *   7       8       9    Zoom    *
0039      *                                */
0040     { 0x01, KEY_NUMERIC_1 },
0041     { 0x02, KEY_NUMERIC_2 },
0042     { 0x03, KEY_NUMERIC_3 },
0043     { 0x0D, KEY_SETUP },      /* Setup key */
0044     { 0x04, KEY_NUMERIC_4 },
0045     { 0x05, KEY_NUMERIC_5 },
0046     { 0x06, KEY_NUMERIC_6 },
0047     { 0x19, KEY_CAMERA },   /* Snapshot key */
0048     { 0x07, KEY_NUMERIC_7 },
0049     { 0x08, KEY_NUMERIC_8 },
0050     { 0x09, KEY_NUMERIC_9 },
0051     { 0x10, KEY_ZOOM },
0052 
0053     /*  0x0A    0x00    0x0B       0x0C   *
0054      * RECALL    0    ChannelUp  VolumeUp *
0055      *                                    */
0056     { 0x0A, KEY_AGAIN },
0057     { 0x00, KEY_NUMERIC_0 },
0058     { 0x0B, KEY_CHANNELUP },
0059     { 0x0C, KEY_VOLUMEUP },
0060 
0061     /*   0x1B      0x1D      0x15        0x18     *
0062      * Timeshift  Record  ChannelDown  VolumeDown *
0063      *                                            */
0064 
0065     { 0x1B, KEY_TIME },
0066     { 0x1D, KEY_RECORD },
0067     { 0x15, KEY_CHANNELDOWN },
0068     { 0x18, KEY_VOLUMEDOWN },
0069 
0070     /*   0x0E   0x1E     0x0F     0x1A  *
0071      *   Stop   Pause  Previous   Next  *
0072      *                                  */
0073 
0074     { 0x0E, KEY_STOP },
0075     { 0x1E, KEY_PAUSE },
0076     { 0x0F, KEY_PREVIOUS },
0077     { 0x1A, KEY_NEXT },
0078 
0079 };
0080 
0081 static struct rc_map_list behold_columbus_map = {
0082     .map = {
0083         .scan     = behold_columbus,
0084         .size     = ARRAY_SIZE(behold_columbus),
0085         .rc_proto = RC_PROTO_UNKNOWN,   /* Legacy IR type */
0086         .name     = RC_MAP_BEHOLD_COLUMBUS,
0087     }
0088 };
0089 
0090 static int __init init_rc_map_behold_columbus(void)
0091 {
0092     return rc_map_register(&behold_columbus_map);
0093 }
0094 
0095 static void __exit exit_rc_map_behold_columbus(void)
0096 {
0097     rc_map_unregister(&behold_columbus_map);
0098 }
0099 
0100 module_init(init_rc_map_behold_columbus)
0101 module_exit(exit_rc_map_behold_columbus)
0102 
0103 MODULE_LICENSE("GPL");
0104 MODULE_AUTHOR("Mauro Carvalho Chehab");