cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

rc-reddo.c (2066B)


      1// SPDX-License-Identifier: GPL-2.0-or-later
      2/*
      3 * MSI DIGIVOX mini III remote controller keytable
      4 *
      5 * Copyright (C) 2013 Antti Palosaari <crope@iki.fi>
      6 */
      7
      8#include <media/rc-map.h>
      9#include <linux/module.h>
     10
     11/*
     12 * Derived from MSI DIGIVOX mini III remote (rc-msi-digivox-iii.c)
     13 *
     14 * Differences between these remotes are:
     15 *
     16 * 1) scancode 0x61d601 is mapped to different button:
     17 *    MSI DIGIVOX mini III   "Source" = KEY_VIDEO
     18 *    Reddo                     "EPG" = KEY_EPG
     19 *
     20 * 2) Reddo remote has less buttons. Missing buttons are: colored buttons,
     21 *    navigation buttons and main power button.
     22 */
     23
     24static struct rc_map_table reddo[] = {
     25	{ 0x61d601, KEY_EPG },             /* EPG */
     26	{ 0x61d602, KEY_NUMERIC_3 },
     27	{ 0x61d604, KEY_NUMERIC_1 },
     28	{ 0x61d605, KEY_NUMERIC_5 },
     29	{ 0x61d606, KEY_NUMERIC_6 },
     30	{ 0x61d607, KEY_CHANNELDOWN },     /* CH- */
     31	{ 0x61d608, KEY_NUMERIC_2 },
     32	{ 0x61d609, KEY_CHANNELUP },       /* CH+ */
     33	{ 0x61d60a, KEY_NUMERIC_9 },
     34	{ 0x61d60b, KEY_ZOOM },            /* Zoom */
     35	{ 0x61d60c, KEY_NUMERIC_7 },
     36	{ 0x61d60d, KEY_NUMERIC_8 },
     37	{ 0x61d60e, KEY_VOLUMEUP },        /* Vol+ */
     38	{ 0x61d60f, KEY_NUMERIC_4 },
     39	{ 0x61d610, KEY_ESC },             /* [back up arrow] */
     40	{ 0x61d611, KEY_NUMERIC_0 },
     41	{ 0x61d612, KEY_OK },              /* [enter arrow] */
     42	{ 0x61d613, KEY_VOLUMEDOWN },      /* Vol- */
     43	{ 0x61d614, KEY_RECORD },          /* Rec */
     44	{ 0x61d615, KEY_STOP },            /* Stop */
     45	{ 0x61d616, KEY_PLAY },            /* Play */
     46	{ 0x61d617, KEY_MUTE },            /* Mute */
     47	{ 0x61d643, KEY_POWER2 },          /* [red power button] */
     48};
     49
     50static struct rc_map_list reddo_map = {
     51	.map = {
     52		.scan     = reddo,
     53		.size     = ARRAY_SIZE(reddo),
     54		.rc_proto = RC_PROTO_NECX,
     55		.name     = RC_MAP_REDDO,
     56	}
     57};
     58
     59static int __init init_rc_map_reddo(void)
     60{
     61	return rc_map_register(&reddo_map);
     62}
     63
     64static void __exit exit_rc_map_reddo(void)
     65{
     66	rc_map_unregister(&reddo_map);
     67}
     68
     69module_init(init_rc_map_reddo)
     70module_exit(exit_rc_map_reddo)
     71
     72MODULE_LICENSE("GPL");
     73MODULE_AUTHOR("Antti Palosaari <crope@iki.fi>");