linux/drivers/media/rc/keymaps/rc-proteus-2309.c
<<
>>
Prefs
   1/* proteus-2309.h - Keytable for proteus_2309 Remote Controller
   2 *
   3 * keymap imported from ir-keymaps.c
   4 *
   5 * Copyright (c) 2010 by Mauro Carvalho Chehab <mchehab@redhat.com>
   6 *
   7 * This program is free software; you can redistribute it and/or modify
   8 * it under the terms of the GNU General Public License as published by
   9 * the Free Software Foundation; either version 2 of the License, or
  10 * (at your option) any later version.
  11 */
  12
  13#include <media/rc-map.h>
  14#include <linux/module.h>
  15
  16/* Michal Majchrowicz <mmajchrowicz@gmail.com> */
  17
  18static struct rc_map_table proteus_2309[] = {
  19        /* numeric */
  20        { 0x00, KEY_0 },
  21        { 0x01, KEY_1 },
  22        { 0x02, KEY_2 },
  23        { 0x03, KEY_3 },
  24        { 0x04, KEY_4 },
  25        { 0x05, KEY_5 },
  26        { 0x06, KEY_6 },
  27        { 0x07, KEY_7 },
  28        { 0x08, KEY_8 },
  29        { 0x09, KEY_9 },
  30
  31        { 0x5c, KEY_POWER },            /* power       */
  32        { 0x20, KEY_ZOOM },             /* full screen */
  33        { 0x0f, KEY_BACKSPACE },        /* recall      */
  34        { 0x1b, KEY_ENTER },            /* mute        */
  35        { 0x41, KEY_RECORD },           /* record      */
  36        { 0x43, KEY_STOP },             /* stop        */
  37        { 0x16, KEY_S },
  38        { 0x1a, KEY_POWER2 },           /* off         */
  39        { 0x2e, KEY_RED },
  40        { 0x1f, KEY_CHANNELDOWN },      /* channel -   */
  41        { 0x1c, KEY_CHANNELUP },        /* channel +   */
  42        { 0x10, KEY_VOLUMEDOWN },       /* volume -    */
  43        { 0x1e, KEY_VOLUMEUP },         /* volume +    */
  44        { 0x14, KEY_F1 },
  45};
  46
  47static struct rc_map_list proteus_2309_map = {
  48        .map = {
  49                .scan    = proteus_2309,
  50                .size    = ARRAY_SIZE(proteus_2309),
  51                .rc_type = RC_TYPE_UNKNOWN,     /* Legacy IR type */
  52                .name    = RC_MAP_PROTEUS_2309,
  53        }
  54};
  55
  56static int __init init_rc_map_proteus_2309(void)
  57{
  58        return rc_map_register(&proteus_2309_map);
  59}
  60
  61static void __exit exit_rc_map_proteus_2309(void)
  62{
  63        rc_map_unregister(&proteus_2309_map);
  64}
  65
  66module_init(init_rc_map_proteus_2309)
  67module_exit(exit_rc_map_proteus_2309)
  68
  69MODULE_LICENSE("GPL");
  70MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@redhat.com>");
  71