linux/drivers/media/rc/keymaps/rc-total-media-in-hand.c
<<
>>
Prefs
   1// SPDX-License-Identifier: GPL-2.0-or-later
   2/*
   3 * Total Media In Hand remote controller keytable
   4 *
   5 * Copyright (C) 2010 Antti Palosaari <crope@iki.fi>
   6 */
   7
   8#include <media/rc-map.h>
   9#include <linux/module.h>
  10
  11/* Uses NEC extended 0x02bd */
  12static struct rc_map_table total_media_in_hand[] = {
  13        { 0x02bd00, KEY_NUMERIC_1 },
  14        { 0x02bd01, KEY_NUMERIC_2 },
  15        { 0x02bd02, KEY_NUMERIC_3 },
  16        { 0x02bd03, KEY_NUMERIC_4 },
  17        { 0x02bd04, KEY_NUMERIC_5 },
  18        { 0x02bd05, KEY_NUMERIC_6 },
  19        { 0x02bd06, KEY_NUMERIC_7 },
  20        { 0x02bd07, KEY_NUMERIC_8 },
  21        { 0x02bd08, KEY_NUMERIC_9 },
  22        { 0x02bd09, KEY_NUMERIC_0 },
  23        { 0x02bd0a, KEY_MUTE },
  24        { 0x02bd0b, KEY_CYCLEWINDOWS },    /* yellow, [min / max] */
  25        { 0x02bd0c, KEY_VIDEO },           /* TV / AV */
  26        { 0x02bd0e, KEY_VOLUMEDOWN },
  27        { 0x02bd0f, KEY_TIME },            /* TimeShift */
  28        { 0x02bd10, KEY_RIGHT },           /* right arrow */
  29        { 0x02bd11, KEY_LEFT },            /* left arrow */
  30        { 0x02bd12, KEY_UP },              /* up arrow */
  31        { 0x02bd13, KEY_DOWN },            /* down arrow */
  32        { 0x02bd14, KEY_POWER2 },          /* [red] */
  33        { 0x02bd15, KEY_OK },              /* OK */
  34        { 0x02bd16, KEY_STOP },
  35        { 0x02bd17, KEY_CAMERA },          /* Snapshot */
  36        { 0x02bd18, KEY_CHANNELUP },
  37        { 0x02bd19, KEY_RECORD },
  38        { 0x02bd1a, KEY_CHANNELDOWN },
  39        { 0x02bd1c, KEY_ESC },             /* Esc */
  40        { 0x02bd1e, KEY_PLAY },
  41        { 0x02bd1f, KEY_VOLUMEUP },
  42        { 0x02bd40, KEY_PAUSE },
  43        { 0x02bd41, KEY_FASTFORWARD },     /* FF >> */
  44        { 0x02bd42, KEY_REWIND },          /* FR << */
  45        { 0x02bd43, KEY_ZOOM },            /* [window + mouse pointer] */
  46        { 0x02bd44, KEY_SHUFFLE },         /* Shuffle */
  47        { 0x02bd45, KEY_INFO },            /* [red (I)] */
  48};
  49
  50static struct rc_map_list total_media_in_hand_map = {
  51        .map = {
  52                .scan     = total_media_in_hand,
  53                .size     = ARRAY_SIZE(total_media_in_hand),
  54                .rc_proto = RC_PROTO_NECX,
  55                .name     = RC_MAP_TOTAL_MEDIA_IN_HAND,
  56        }
  57};
  58
  59static int __init init_rc_map_total_media_in_hand(void)
  60{
  61        return rc_map_register(&total_media_in_hand_map);
  62}
  63
  64static void __exit exit_rc_map_total_media_in_hand(void)
  65{
  66        rc_map_unregister(&total_media_in_hand_map);
  67}
  68
  69module_init(init_rc_map_total_media_in_hand)
  70module_exit(exit_rc_map_total_media_in_hand)
  71
  72MODULE_LICENSE("GPL");
  73MODULE_AUTHOR("Antti Palosaari <crope@iki.fi>");
  74