xref: /linux/drivers/media/rc/keymaps/rc-anysee.c (revision 32cf86f6d16367db5a10039c1dd938a2427d697c)
1*32cf86f6SMauro Carvalho Chehab /*
2*32cf86f6SMauro Carvalho Chehab  * Anysee remote controller keytable
3*32cf86f6SMauro Carvalho Chehab  *
4*32cf86f6SMauro Carvalho Chehab  * Copyright (C) 2010 Antti Palosaari <crope@iki.fi>
5*32cf86f6SMauro Carvalho Chehab  *
6*32cf86f6SMauro Carvalho Chehab  *    This program is free software; you can redistribute it and/or modify
7*32cf86f6SMauro Carvalho Chehab  *    it under the terms of the GNU General Public License as published by
8*32cf86f6SMauro Carvalho Chehab  *    the Free Software Foundation; either version 2 of the License, or
9*32cf86f6SMauro Carvalho Chehab  *    (at your option) any later version.
10*32cf86f6SMauro Carvalho Chehab  *
11*32cf86f6SMauro Carvalho Chehab  *    This program is distributed in the hope that it will be useful,
12*32cf86f6SMauro Carvalho Chehab  *    but WITHOUT ANY WARRANTY; without even the implied warranty of
13*32cf86f6SMauro Carvalho Chehab  *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14*32cf86f6SMauro Carvalho Chehab  *    GNU General Public License for more details.
15*32cf86f6SMauro Carvalho Chehab  *
16*32cf86f6SMauro Carvalho Chehab  *    You should have received a copy of the GNU General Public License along
17*32cf86f6SMauro Carvalho Chehab  *    with this program; if not, write to the Free Software Foundation, Inc.,
18*32cf86f6SMauro Carvalho Chehab  *    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
19*32cf86f6SMauro Carvalho Chehab  */
20*32cf86f6SMauro Carvalho Chehab 
21*32cf86f6SMauro Carvalho Chehab #include <media/rc-map.h>
22*32cf86f6SMauro Carvalho Chehab 
23*32cf86f6SMauro Carvalho Chehab static struct ir_scancode anysee[] = {
24*32cf86f6SMauro Carvalho Chehab 	{ 0x0800, KEY_0 },
25*32cf86f6SMauro Carvalho Chehab 	{ 0x0801, KEY_1 },
26*32cf86f6SMauro Carvalho Chehab 	{ 0x0802, KEY_2 },
27*32cf86f6SMauro Carvalho Chehab 	{ 0x0803, KEY_3 },
28*32cf86f6SMauro Carvalho Chehab 	{ 0x0804, KEY_4 },
29*32cf86f6SMauro Carvalho Chehab 	{ 0x0805, KEY_5 },
30*32cf86f6SMauro Carvalho Chehab 	{ 0x0806, KEY_6 },
31*32cf86f6SMauro Carvalho Chehab 	{ 0x0807, KEY_7 },
32*32cf86f6SMauro Carvalho Chehab 	{ 0x0808, KEY_8 },
33*32cf86f6SMauro Carvalho Chehab 	{ 0x0809, KEY_9 },
34*32cf86f6SMauro Carvalho Chehab 	{ 0x080a, KEY_POWER2 },          /* [red power button] */
35*32cf86f6SMauro Carvalho Chehab 	{ 0x080b, KEY_VIDEO },           /* [*] MODE */
36*32cf86f6SMauro Carvalho Chehab 	{ 0x080c, KEY_CHANNEL },         /* [symbol counterclockwise arrow] */
37*32cf86f6SMauro Carvalho Chehab 	{ 0x080d, KEY_NEXT },            /* [>>|] */
38*32cf86f6SMauro Carvalho Chehab 	{ 0x080e, KEY_MENU },            /* MENU */
39*32cf86f6SMauro Carvalho Chehab 	{ 0x080f, KEY_EPG },             /* [EPG] */
40*32cf86f6SMauro Carvalho Chehab 	{ 0x0810, KEY_CLEAR },           /* EXIT */
41*32cf86f6SMauro Carvalho Chehab 	{ 0x0811, KEY_CHANNELUP },
42*32cf86f6SMauro Carvalho Chehab 	{ 0x0812, KEY_VOLUMEDOWN },
43*32cf86f6SMauro Carvalho Chehab 	{ 0x0813, KEY_VOLUMEUP },
44*32cf86f6SMauro Carvalho Chehab 	{ 0x0814, KEY_CHANNELDOWN },
45*32cf86f6SMauro Carvalho Chehab 	{ 0x0815, KEY_OK },
46*32cf86f6SMauro Carvalho Chehab 	{ 0x0816, KEY_RADIO },           /* [symbol TV/radio] */
47*32cf86f6SMauro Carvalho Chehab 	{ 0x0817, KEY_INFO },            /* [i] */
48*32cf86f6SMauro Carvalho Chehab 	{ 0x0818, KEY_PREVIOUS },        /* [|<<] */
49*32cf86f6SMauro Carvalho Chehab 	{ 0x0819, KEY_FAVORITES },       /* FAV. */
50*32cf86f6SMauro Carvalho Chehab 	{ 0x081a, KEY_SUBTITLE },        /* Subtitle */
51*32cf86f6SMauro Carvalho Chehab 	{ 0x081b, KEY_CAMERA },          /* [symbol camera] */
52*32cf86f6SMauro Carvalho Chehab 	{ 0x081c, KEY_YELLOW },
53*32cf86f6SMauro Carvalho Chehab 	{ 0x081d, KEY_RED },
54*32cf86f6SMauro Carvalho Chehab 	{ 0x081e, KEY_LANGUAGE },        /* [symbol Second Audio Program] */
55*32cf86f6SMauro Carvalho Chehab 	{ 0x081f, KEY_GREEN },
56*32cf86f6SMauro Carvalho Chehab 	{ 0x0820, KEY_SLEEP },           /* Sleep */
57*32cf86f6SMauro Carvalho Chehab 	{ 0x0821, KEY_SCREEN },          /* 16:9 / 4:3 */
58*32cf86f6SMauro Carvalho Chehab 	{ 0x0822, KEY_ZOOM },            /* SIZE */
59*32cf86f6SMauro Carvalho Chehab 	{ 0x0824, KEY_FN },              /* [F1] */
60*32cf86f6SMauro Carvalho Chehab 	{ 0x0825, KEY_FN },              /* [F2] */
61*32cf86f6SMauro Carvalho Chehab 	{ 0x0842, KEY_MUTE },            /* symbol mute */
62*32cf86f6SMauro Carvalho Chehab 	{ 0x0844, KEY_BLUE },
63*32cf86f6SMauro Carvalho Chehab 	{ 0x0847, KEY_TEXT },            /* TEXT */
64*32cf86f6SMauro Carvalho Chehab 	{ 0x0848, KEY_STOP },
65*32cf86f6SMauro Carvalho Chehab 	{ 0x0849, KEY_RECORD },
66*32cf86f6SMauro Carvalho Chehab 	{ 0x0850, KEY_PLAY },
67*32cf86f6SMauro Carvalho Chehab 	{ 0x0851, KEY_PAUSE },
68*32cf86f6SMauro Carvalho Chehab };
69*32cf86f6SMauro Carvalho Chehab 
70*32cf86f6SMauro Carvalho Chehab static struct rc_keymap anysee_map = {
71*32cf86f6SMauro Carvalho Chehab 	.map = {
72*32cf86f6SMauro Carvalho Chehab 		.scan    = anysee,
73*32cf86f6SMauro Carvalho Chehab 		.size    = ARRAY_SIZE(anysee),
74*32cf86f6SMauro Carvalho Chehab 		.ir_type = IR_TYPE_NEC,
75*32cf86f6SMauro Carvalho Chehab 		.name    = RC_MAP_ANYSEE,
76*32cf86f6SMauro Carvalho Chehab 	}
77*32cf86f6SMauro Carvalho Chehab };
78*32cf86f6SMauro Carvalho Chehab 
79*32cf86f6SMauro Carvalho Chehab static int __init init_rc_map_anysee(void)
80*32cf86f6SMauro Carvalho Chehab {
81*32cf86f6SMauro Carvalho Chehab 	return ir_register_map(&anysee_map);
82*32cf86f6SMauro Carvalho Chehab }
83*32cf86f6SMauro Carvalho Chehab 
84*32cf86f6SMauro Carvalho Chehab static void __exit exit_rc_map_anysee(void)
85*32cf86f6SMauro Carvalho Chehab {
86*32cf86f6SMauro Carvalho Chehab 	ir_unregister_map(&anysee_map);
87*32cf86f6SMauro Carvalho Chehab }
88*32cf86f6SMauro Carvalho Chehab 
89*32cf86f6SMauro Carvalho Chehab module_init(init_rc_map_anysee)
90*32cf86f6SMauro Carvalho Chehab module_exit(exit_rc_map_anysee)
91*32cf86f6SMauro Carvalho Chehab 
92*32cf86f6SMauro Carvalho Chehab MODULE_LICENSE("GPL");
93*32cf86f6SMauro Carvalho Chehab MODULE_AUTHOR("Antti Palosaari <crope@iki.fi>");
94