1
2
3
4
5
6
7
8
9
10
11
12
13#include <media/rc-map.h>
14#include <linux/module.h>
15
16
17
18static struct rc_map_table avermedia[] = {
19 { 0x28, KEY_1 },
20 { 0x18, KEY_2 },
21 { 0x38, KEY_3 },
22 { 0x24, KEY_4 },
23 { 0x14, KEY_5 },
24 { 0x34, KEY_6 },
25 { 0x2c, KEY_7 },
26 { 0x1c, KEY_8 },
27 { 0x3c, KEY_9 },
28 { 0x22, KEY_0 },
29
30 { 0x20, KEY_TV },
31 { 0x10, KEY_CD },
32 { 0x30, KEY_TEXT },
33 { 0x00, KEY_POWER },
34
35 { 0x08, KEY_VIDEO },
36 { 0x04, KEY_AUDIO },
37 { 0x0c, KEY_ZOOM },
38
39 { 0x12, KEY_SUBTITLE },
40 { 0x32, KEY_REWIND },
41 { 0x02, KEY_PRINT },
42
43 { 0x2a, KEY_SEARCH },
44 { 0x1a, KEY_SLEEP },
45 { 0x3a, KEY_CAMERA },
46 { 0x0a, KEY_MUTE },
47
48 { 0x26, KEY_RECORD },
49 { 0x16, KEY_PAUSE },
50 { 0x36, KEY_STOP },
51 { 0x06, KEY_PLAY },
52
53 { 0x2e, KEY_RED },
54 { 0x21, KEY_GREEN },
55 { 0x0e, KEY_YELLOW },
56 { 0x01, KEY_BLUE },
57
58 { 0x1e, KEY_VOLUMEDOWN },
59 { 0x3e, KEY_VOLUMEUP },
60 { 0x11, KEY_CHANNELDOWN },
61 { 0x31, KEY_CHANNELUP }
62};
63
64static struct rc_map_list avermedia_map = {
65 .map = {
66 .scan = avermedia,
67 .size = ARRAY_SIZE(avermedia),
68 .rc_type = RC_TYPE_UNKNOWN,
69 .name = RC_MAP_AVERMEDIA,
70 }
71};
72
73static int __init init_rc_map_avermedia(void)
74{
75 return rc_map_register(&avermedia_map);
76}
77
78static void __exit exit_rc_map_avermedia(void)
79{
80 rc_map_unregister(&avermedia_map);
81}
82
83module_init(init_rc_map_avermedia)
84module_exit(exit_rc_map_avermedia)
85
86MODULE_LICENSE("GPL");
87MODULE_AUTHOR("Mauro Carvalho Chehab");
88