1 // SPDX-License-Identifier: GPL-2.0+
2 // encore-enltv2.h - Keytable for encore_enltv2 Remote Controller
3 //
4 // keymap imported from ir-keymaps.c
5 //
6 // Copyright (c) 2010 by Mauro Carvalho Chehab
7 
8 #include <media/rc-map.h>
9 #include <linux/module.h>
10 
11 /* Encore ENLTV2-FM  - silver plastic - "Wand Media" written at the botton
12     Mauro Carvalho Chehab <mchehab@kernel.org> */
13 
14 static struct rc_map_table encore_enltv2[] = {
15 	{ 0x4c, KEY_POWER2 },
16 	{ 0x4a, KEY_TUNER },
17 	{ 0x40, KEY_NUMERIC_1 },
18 	{ 0x60, KEY_NUMERIC_2 },
19 	{ 0x50, KEY_NUMERIC_3 },
20 	{ 0x70, KEY_NUMERIC_4 },
21 	{ 0x48, KEY_NUMERIC_5 },
22 	{ 0x68, KEY_NUMERIC_6 },
23 	{ 0x58, KEY_NUMERIC_7 },
24 	{ 0x78, KEY_NUMERIC_8 },
25 	{ 0x44, KEY_NUMERIC_9 },
26 	{ 0x54, KEY_NUMERIC_0 },
27 
28 	{ 0x64, KEY_LAST },		/* +100 */
29 	{ 0x4e, KEY_AGAIN },		/* Recall */
30 
31 	{ 0x6c, KEY_VIDEO },		/* Video Source */
32 	{ 0x5e, KEY_MENU },
33 	{ 0x56, KEY_SCREEN },
34 	{ 0x7a, KEY_SETUP },
35 
36 	{ 0x46, KEY_MUTE },
37 	{ 0x5c, KEY_MODE },		/* Stereo */
38 	{ 0x74, KEY_INFO },
39 	{ 0x7c, KEY_CLEAR },
40 
41 	{ 0x55, KEY_UP },
42 	{ 0x49, KEY_DOWN },
43 	{ 0x7e, KEY_LEFT },
44 	{ 0x59, KEY_RIGHT },
45 	{ 0x6a, KEY_ENTER },
46 
47 	{ 0x42, KEY_VOLUMEUP },
48 	{ 0x62, KEY_VOLUMEDOWN },
49 	{ 0x52, KEY_CHANNELUP },
50 	{ 0x72, KEY_CHANNELDOWN },
51 
52 	{ 0x41, KEY_RECORD },
53 	{ 0x51, KEY_CAMERA },		/* Snapshot */
54 	{ 0x75, KEY_TIME },		/* Timeshift */
55 	{ 0x71, KEY_TV2 },		/* PIP */
56 
57 	{ 0x45, KEY_REWIND },
58 	{ 0x6f, KEY_PAUSE },
59 	{ 0x7d, KEY_FORWARD },
60 	{ 0x79, KEY_STOP },
61 };
62 
63 static struct rc_map_list encore_enltv2_map = {
64 	.map = {
65 		.scan     = encore_enltv2,
66 		.size     = ARRAY_SIZE(encore_enltv2),
67 		.rc_proto = RC_PROTO_UNKNOWN,	/* Legacy IR type */
68 		.name     = RC_MAP_ENCORE_ENLTV2,
69 	}
70 };
71 
72 static int __init init_rc_map_encore_enltv2(void)
73 {
74 	return rc_map_register(&encore_enltv2_map);
75 }
76 
77 static void __exit exit_rc_map_encore_enltv2(void)
78 {
79 	rc_map_unregister(&encore_enltv2_map);
80 }
81 
82 module_init(init_rc_map_encore_enltv2)
83 module_exit(exit_rc_map_encore_enltv2)
84 
85 MODULE_LICENSE("GPL");
86 MODULE_AUTHOR("Mauro Carvalho Chehab");
87