diff options
Diffstat (limited to 'drivers/media/IR/keymaps/rc-genius-tvgo-a11mce.c')
-rw-r--r-- | drivers/media/IR/keymaps/rc-genius-tvgo-a11mce.c | 84 |
1 files changed, 84 insertions, 0 deletions
diff --git a/drivers/media/IR/keymaps/rc-genius-tvgo-a11mce.c b/drivers/media/IR/keymaps/rc-genius-tvgo-a11mce.c new file mode 100644 index 000000000000..89f8e384e52a --- /dev/null +++ b/drivers/media/IR/keymaps/rc-genius-tvgo-a11mce.c | |||
@@ -0,0 +1,84 @@ | |||
1 | /* genius-tvgo-a11mce.h - Keytable for genius_tvgo_a11mce Remote Controller | ||
2 | * | ||
3 | * keymap imported from ir-keymaps.c | ||
4 | * | ||
5 | * Copyright (c) 2010 by Mauro Carvalho Chehab <mchehab@redhat.com> | ||
6 | * | ||
7 | * This program is free software; you can redistribute it and/or modify | ||
8 | * it under the terms of the GNU General Public License as published by | ||
9 | * the Free Software Foundation; either version 2 of the License, or | ||
10 | * (at your option) any later version. | ||
11 | */ | ||
12 | |||
13 | #include <media/rc-map.h> | ||
14 | |||
15 | /* | ||
16 | * Remote control for the Genius TVGO A11MCE | ||
17 | * Adrian Pardini <pardo.bsso@gmail.com> | ||
18 | */ | ||
19 | |||
20 | static struct ir_scancode genius_tvgo_a11mce[] = { | ||
21 | /* Keys 0 to 9 */ | ||
22 | { 0x48, KEY_0 }, | ||
23 | { 0x09, KEY_1 }, | ||
24 | { 0x1d, KEY_2 }, | ||
25 | { 0x1f, KEY_3 }, | ||
26 | { 0x19, KEY_4 }, | ||
27 | { 0x1b, KEY_5 }, | ||
28 | { 0x11, KEY_6 }, | ||
29 | { 0x17, KEY_7 }, | ||
30 | { 0x12, KEY_8 }, | ||
31 | { 0x16, KEY_9 }, | ||
32 | |||
33 | { 0x54, KEY_RECORD }, /* recording */ | ||
34 | { 0x06, KEY_MUTE }, /* mute */ | ||
35 | { 0x10, KEY_POWER }, | ||
36 | { 0x40, KEY_LAST }, /* recall */ | ||
37 | { 0x4c, KEY_CHANNELUP }, /* channel / program + */ | ||
38 | { 0x00, KEY_CHANNELDOWN }, /* channel / program - */ | ||
39 | { 0x0d, KEY_VOLUMEUP }, | ||
40 | { 0x15, KEY_VOLUMEDOWN }, | ||
41 | { 0x4d, KEY_OK }, /* also labeled as Pause */ | ||
42 | { 0x1c, KEY_ZOOM }, /* full screen and Stop*/ | ||
43 | { 0x02, KEY_MODE }, /* AV Source or Rewind*/ | ||
44 | { 0x04, KEY_LIST }, /* -/-- */ | ||
45 | /* small arrows above numbers */ | ||
46 | { 0x1a, KEY_NEXT }, /* also Fast Forward */ | ||
47 | { 0x0e, KEY_PREVIOUS }, /* also Rewind */ | ||
48 | /* these are in a rather non standard layout and have | ||
49 | an alternate name written */ | ||
50 | { 0x1e, KEY_UP }, /* Video Setting */ | ||
51 | { 0x0a, KEY_DOWN }, /* Video Default */ | ||
52 | { 0x05, KEY_CAMERA }, /* Snapshot */ | ||
53 | { 0x0c, KEY_RIGHT }, /* Hide Panel */ | ||
54 | /* Four buttons without label */ | ||
55 | { 0x49, KEY_RED }, | ||
56 | { 0x0b, KEY_GREEN }, | ||
57 | { 0x13, KEY_YELLOW }, | ||
58 | { 0x50, KEY_BLUE }, | ||
59 | }; | ||
60 | |||
61 | static struct rc_keymap genius_tvgo_a11mce_map = { | ||
62 | .map = { | ||
63 | .scan = genius_tvgo_a11mce, | ||
64 | .size = ARRAY_SIZE(genius_tvgo_a11mce), | ||
65 | .ir_type = IR_TYPE_UNKNOWN, /* Legacy IR type */ | ||
66 | .name = RC_MAP_GENIUS_TVGO_A11MCE, | ||
67 | } | ||
68 | }; | ||
69 | |||
70 | static int __init init_rc_map_genius_tvgo_a11mce(void) | ||
71 | { | ||
72 | return ir_register_map(&genius_tvgo_a11mce_map); | ||
73 | } | ||
74 | |||
75 | static void __exit exit_rc_map_genius_tvgo_a11mce(void) | ||
76 | { | ||
77 | ir_unregister_map(&genius_tvgo_a11mce_map); | ||
78 | } | ||
79 | |||
80 | module_init(init_rc_map_genius_tvgo_a11mce) | ||
81 | module_exit(exit_rc_map_genius_tvgo_a11mce) | ||
82 | |||
83 | MODULE_LICENSE("GPL"); | ||
84 | MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@redhat.com>"); | ||