Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003  * Medion X10 RF remote keytable
0004  *
0005  * Copyright (C) 2011 Anssi Hannula <anssi.hannula@?ki.fi>
0006  *
0007  * This file is based on a keytable provided by
0008  * Jan Losinski <losinski@wh2.tu-dresden.de>
0009  */
0010 
0011 #include <linux/module.h>
0012 #include <media/rc-map.h>
0013 
0014 static struct rc_map_table medion_x10[] = {
0015     { 0x2c, KEY_TV },    /* TV */
0016     { 0x2d, KEY_VCR },   /* VCR */
0017     { 0x04, KEY_DVD },   /* DVD */
0018     { 0x06, KEY_AUDIO }, /* MUSIC */
0019 
0020     { 0x2e, KEY_RADIO },     /* RADIO */
0021     { 0x05, KEY_DIRECTORY }, /* PHOTO */
0022     { 0x2f, KEY_INFO },      /* TV-PREVIEW */
0023     { 0x30, KEY_LIST },      /* CHANNEL-LST */
0024 
0025     { 0x1b, KEY_SETUP }, /* SETUP */
0026     { 0x31, KEY_VIDEO }, /* VIDEO DESKTOP */
0027 
0028     { 0x08, KEY_VOLUMEDOWN },  /* VOL - */
0029     { 0x09, KEY_VOLUMEUP },    /* VOL + */
0030     { 0x0b, KEY_CHANNELUP },   /* CHAN + */
0031     { 0x0c, KEY_CHANNELDOWN }, /* CHAN - */
0032     { 0x00, KEY_MUTE },        /* MUTE */
0033 
0034     { 0x32, KEY_RED }, /* red */
0035     { 0x33, KEY_GREEN }, /* green */
0036     { 0x34, KEY_YELLOW }, /* yellow */
0037     { 0x35, KEY_BLUE }, /* blue */
0038     { 0x16, KEY_TEXT }, /* TXT */
0039 
0040     { 0x0d, KEY_NUMERIC_1 },
0041     { 0x0e, KEY_NUMERIC_2 },
0042     { 0x0f, KEY_NUMERIC_3 },
0043     { 0x10, KEY_NUMERIC_4 },
0044     { 0x11, KEY_NUMERIC_5 },
0045     { 0x12, KEY_NUMERIC_6 },
0046     { 0x13, KEY_NUMERIC_7 },
0047     { 0x14, KEY_NUMERIC_8 },
0048     { 0x15, KEY_NUMERIC_9 },
0049     { 0x17, KEY_NUMERIC_0 },
0050     { 0x1c, KEY_SEARCH }, /* TV/RAD, CH SRC */
0051     { 0x20, KEY_DELETE }, /* DELETE */
0052 
0053     { 0x36, KEY_KEYBOARD }, /* RENAME */
0054     { 0x18, KEY_SCREEN },   /* SNAPSHOT */
0055 
0056     { 0x1a, KEY_UP },    /* up */
0057     { 0x22, KEY_DOWN },  /* down */
0058     { 0x1d, KEY_LEFT },  /* left */
0059     { 0x1f, KEY_RIGHT }, /* right */
0060     { 0x1e, KEY_OK },    /* OK */
0061 
0062     { 0x37, KEY_SELECT }, /* ACQUIRE IMAGE */
0063     { 0x38, KEY_EDIT },   /* EDIT IMAGE */
0064 
0065     { 0x24, KEY_REWIND },   /* rewind  (<<) */
0066     { 0x25, KEY_PLAY },     /* play    ( >) */
0067     { 0x26, KEY_FORWARD },  /* forward (>>) */
0068     { 0x27, KEY_RECORD },   /* record  ( o) */
0069     { 0x28, KEY_STOP },     /* stop    ([]) */
0070     { 0x29, KEY_PAUSE },    /* pause   ('') */
0071 
0072     { 0x21, KEY_PREVIOUS },        /* prev */
0073     { 0x39, KEY_SWITCHVIDEOMODE }, /* F SCR */
0074     { 0x23, KEY_NEXT },            /* next */
0075     { 0x19, KEY_MENU },            /* MENU */
0076     { 0x3a, KEY_LANGUAGE },        /* AUDIO */
0077 
0078     { 0x02, KEY_POWER }, /* POWER */
0079 };
0080 
0081 static struct rc_map_list medion_x10_map = {
0082     .map = {
0083         .scan     = medion_x10,
0084         .size     = ARRAY_SIZE(medion_x10),
0085         .rc_proto = RC_PROTO_OTHER,
0086         .name     = RC_MAP_MEDION_X10,
0087     }
0088 };
0089 
0090 static int __init init_rc_map_medion_x10(void)
0091 {
0092     return rc_map_register(&medion_x10_map);
0093 }
0094 
0095 static void __exit exit_rc_map_medion_x10(void)
0096 {
0097     rc_map_unregister(&medion_x10_map);
0098 }
0099 
0100 module_init(init_rc_map_medion_x10)
0101 module_exit(exit_rc_map_medion_x10)
0102 
0103 MODULE_LICENSE("GPL");
0104 MODULE_AUTHOR("Anssi Hannula <anssi.hannula@iki.fi>");