Book a Demo!
CoCalc Logo Icon
StoreFeaturesDocsShareSupportNewsAboutPoliciesSign UpSign In
awilliam
GitHub Repository: awilliam/linux-vfio
Path: blob/master/drivers/media/rc/keymaps/rc-behold.c
15112 views
1
/* behold.h - Keytable for behold Remote Controller
2
*
3
* keymap imported from ir-keymaps.c
4
*
5
* Copyright (c) 2010 by Mauro Carvalho Chehab <[email protected]>
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
* Igor Kuznetsov <[email protected]>
17
* Andrey J. Melnikov <[email protected]>
18
*
19
* Keytable is used by BeholdTV 60x series, M6 series at
20
* least, and probably other cards too.
21
* The "ascii-art picture" below (in comments, first row
22
* is the keycode in hex, and subsequent row(s) shows
23
* the button labels (several variants when appropriate)
24
* helps to descide which keycodes to assign to the buttons.
25
*/
26
27
static struct rc_map_table behold[] = {
28
29
/* 0x1c 0x12 *
30
* TV/FM POWER *
31
* */
32
{ 0x6b861c, KEY_TUNER }, /* XXX KEY_TV / KEY_RADIO */
33
{ 0x6b8612, KEY_POWER },
34
35
/* 0x01 0x02 0x03 *
36
* 1 2 3 *
37
* *
38
* 0x04 0x05 0x06 *
39
* 4 5 6 *
40
* *
41
* 0x07 0x08 0x09 *
42
* 7 8 9 *
43
* */
44
{ 0x6b8601, KEY_1 },
45
{ 0x6b8602, KEY_2 },
46
{ 0x6b8603, KEY_3 },
47
{ 0x6b8604, KEY_4 },
48
{ 0x6b8605, KEY_5 },
49
{ 0x6b8606, KEY_6 },
50
{ 0x6b8607, KEY_7 },
51
{ 0x6b8608, KEY_8 },
52
{ 0x6b8609, KEY_9 },
53
54
/* 0x0a 0x00 0x17 *
55
* RECALL 0 MODE *
56
* */
57
{ 0x6b860a, KEY_AGAIN },
58
{ 0x6b8600, KEY_0 },
59
{ 0x6b8617, KEY_MODE },
60
61
/* 0x14 0x10 *
62
* ASPECT FULLSCREEN *
63
* */
64
{ 0x6b8614, KEY_SCREEN },
65
{ 0x6b8610, KEY_ZOOM },
66
67
/* 0x0b *
68
* Up *
69
* *
70
* 0x18 0x16 0x0c *
71
* Left Ok Right *
72
* *
73
* 0x015 *
74
* Down *
75
* */
76
{ 0x6b860b, KEY_CHANNELUP },
77
{ 0x6b8618, KEY_VOLUMEDOWN },
78
{ 0x6b8616, KEY_OK }, /* XXX KEY_ENTER */
79
{ 0x6b860c, KEY_VOLUMEUP },
80
{ 0x6b8615, KEY_CHANNELDOWN },
81
82
/* 0x11 0x0d *
83
* MUTE INFO *
84
* */
85
{ 0x6b8611, KEY_MUTE },
86
{ 0x6b860d, KEY_INFO },
87
88
/* 0x0f 0x1b 0x1a *
89
* RECORD PLAY/PAUSE STOP *
90
* *
91
* 0x0e 0x1f 0x1e *
92
*TELETEXT AUDIO SOURCE *
93
* RED YELLOW *
94
* */
95
{ 0x6b860f, KEY_RECORD },
96
{ 0x6b861b, KEY_PLAYPAUSE },
97
{ 0x6b861a, KEY_STOP },
98
{ 0x6b860e, KEY_TEXT },
99
{ 0x6b861f, KEY_RED }, /*XXX KEY_AUDIO */
100
{ 0x6b861e, KEY_VIDEO },
101
102
/* 0x1d 0x13 0x19 *
103
* SLEEP PREVIEW DVB *
104
* GREEN BLUE *
105
* */
106
{ 0x6b861d, KEY_SLEEP },
107
{ 0x6b8613, KEY_GREEN },
108
{ 0x6b8619, KEY_BLUE }, /* XXX KEY_SAT */
109
110
/* 0x58 0x5c *
111
* FREEZE SNAPSHOT *
112
* */
113
{ 0x6b8658, KEY_SLOW },
114
{ 0x6b865c, KEY_CAMERA },
115
116
};
117
118
static struct rc_map_list behold_map = {
119
.map = {
120
.scan = behold,
121
.size = ARRAY_SIZE(behold),
122
.rc_type = RC_TYPE_NEC,
123
.name = RC_MAP_BEHOLD,
124
}
125
};
126
127
static int __init init_rc_map_behold(void)
128
{
129
return rc_map_register(&behold_map);
130
}
131
132
static void __exit exit_rc_map_behold(void)
133
{
134
rc_map_unregister(&behold_map);
135
}
136
137
module_init(init_rc_map_behold)
138
module_exit(exit_rc_map_behold)
139
140
MODULE_LICENSE("GPL");
141
MODULE_AUTHOR("Mauro Carvalho Chehab <[email protected]>");
142
143