Linux 6.9-rc1
[linux-2.6-microblaze.git] / drivers / media / rc / keymaps / rc-alink-dtu-m.c
1 // SPDX-License-Identifier: GPL-2.0-or-later
2 /*
3  * A-Link DTU(m) 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 /* A-Link DTU(m) slim remote, 6 rows, 3 columns. */
12 static struct rc_map_table alink_dtu_m[] = {
13         { 0x0800, KEY_VOLUMEUP },
14         { 0x0801, KEY_NUMERIC_1 },
15         { 0x0802, KEY_NUMERIC_3 },
16         { 0x0803, KEY_NUMERIC_7 },
17         { 0x0804, KEY_NUMERIC_9 },
18         { 0x0805, KEY_NEW },             /* symbol: PIP */
19         { 0x0806, KEY_NUMERIC_0 },
20         { 0x0807, KEY_CHANNEL },         /* JUMP */
21         { 0x080d, KEY_NUMERIC_5 },
22         { 0x080f, KEY_NUMERIC_2 },
23         { 0x0812, KEY_POWER2 },
24         { 0x0814, KEY_CHANNELUP },
25         { 0x0816, KEY_VOLUMEDOWN },
26         { 0x0818, KEY_NUMERIC_6 },
27         { 0x081a, KEY_MUTE },
28         { 0x081b, KEY_NUMERIC_8 },
29         { 0x081c, KEY_NUMERIC_4 },
30         { 0x081d, KEY_CHANNELDOWN },
31 };
32
33 static struct rc_map_list alink_dtu_m_map = {
34         .map = {
35                 .scan     = alink_dtu_m,
36                 .size     = ARRAY_SIZE(alink_dtu_m),
37                 .rc_proto = RC_PROTO_NEC,
38                 .name     = RC_MAP_ALINK_DTU_M,
39         }
40 };
41
42 static int __init init_rc_map_alink_dtu_m(void)
43 {
44         return rc_map_register(&alink_dtu_m_map);
45 }
46
47 static void __exit exit_rc_map_alink_dtu_m(void)
48 {
49         rc_map_unregister(&alink_dtu_m_map);
50 }
51
52 module_init(init_rc_map_alink_dtu_m)
53 module_exit(exit_rc_map_alink_dtu_m)
54
55 MODULE_LICENSE("GPL");
56 MODULE_AUTHOR("Antti Palosaari <crope@iki.fi>");
57 MODULE_DESCRIPTION("A-Link DTU(m) slim remote, 6 rows, 3 columns.");