1// SPDX-License-Identifier: GPL-2.0+
2/*
3 * Copyright (C) 2019 Christian Hewitt <christianshewitt@gmail.com>
4 *
5 */
6
7#include <media/rc-map.h>
8#include <linux/module.h>
9
10/*
11 * Keytable for the Beelink Mini MXIII remote control
12 *
13 */
14
15static struct rc_map_table beelink_mxiii[] = {
16	{ 0xb2dc, KEY_POWER },
17
18	{ 0xb288, KEY_MUTE },
19	{ 0xb282, KEY_HOME },
20
21	{ 0xb2ca, KEY_UP },
22	{ 0xb299, KEY_LEFT },
23	{ 0xb2ce, KEY_OK },
24	{ 0xb2c1, KEY_RIGHT },
25	{ 0xb2d2, KEY_DOWN },
26
27	{ 0xb2c5, KEY_MENU },
28	{ 0xb29a, KEY_BACK },
29
30	{ 0xb281, KEY_VOLUMEDOWN },
31	{ 0xb280, KEY_VOLUMEUP },
32};
33
34static struct rc_map_list beelink_mxiii_map = {
35	.map = {
36		.scan     = beelink_mxiii,
37		.size     = ARRAY_SIZE(beelink_mxiii),
38		.rc_proto = RC_PROTO_NEC,
39		.name     = RC_MAP_BEELINK_MXIII,
40	}
41};
42
43static int __init init_rc_map_beelink_mxiii(void)
44{
45	return rc_map_register(&beelink_mxiii_map);
46}
47
48static void __exit exit_rc_map_beelink_mxiii(void)
49{
50	rc_map_unregister(&beelink_mxiii_map);
51}
52
53module_init(init_rc_map_beelink_mxiii)
54module_exit(exit_rc_map_beelink_mxiii)
55
56MODULE_LICENSE("GPL");
57MODULE_AUTHOR("Christian Hewitt <christianshewitt@gmail.com");
58MODULE_DESCRIPTION("Beelink Mini MXIII remote controller keytable");
59