xref: /openbmc/linux/drivers/media/rc/keymaps/rc-flydvb.c (revision 32cf86f6d16367db5a10039c1dd938a2427d697c)
1*32cf86f6SMauro Carvalho Chehab /* flydvb.h - Keytable for flydvb Remote Controller
2*32cf86f6SMauro Carvalho Chehab  *
3*32cf86f6SMauro Carvalho Chehab  * keymap imported from ir-keymaps.c
4*32cf86f6SMauro Carvalho Chehab  *
5*32cf86f6SMauro Carvalho Chehab  * Copyright (c) 2010 by Mauro Carvalho Chehab <mchehab@redhat.com>
6*32cf86f6SMauro Carvalho Chehab  *
7*32cf86f6SMauro Carvalho Chehab  * This program is free software; you can redistribute it and/or modify
8*32cf86f6SMauro Carvalho Chehab  * it under the terms of the GNU General Public License as published by
9*32cf86f6SMauro Carvalho Chehab  * the Free Software Foundation; either version 2 of the License, or
10*32cf86f6SMauro Carvalho Chehab  * (at your option) any later version.
11*32cf86f6SMauro Carvalho Chehab  */
12*32cf86f6SMauro Carvalho Chehab 
13*32cf86f6SMauro Carvalho Chehab #include <media/rc-map.h>
14*32cf86f6SMauro Carvalho Chehab 
15*32cf86f6SMauro Carvalho Chehab static struct ir_scancode flydvb[] = {
16*32cf86f6SMauro Carvalho Chehab 	{ 0x01, KEY_ZOOM },		/* Full Screen */
17*32cf86f6SMauro Carvalho Chehab 	{ 0x00, KEY_POWER },		/* Power */
18*32cf86f6SMauro Carvalho Chehab 
19*32cf86f6SMauro Carvalho Chehab 	{ 0x03, KEY_1 },
20*32cf86f6SMauro Carvalho Chehab 	{ 0x04, KEY_2 },
21*32cf86f6SMauro Carvalho Chehab 	{ 0x05, KEY_3 },
22*32cf86f6SMauro Carvalho Chehab 	{ 0x07, KEY_4 },
23*32cf86f6SMauro Carvalho Chehab 	{ 0x08, KEY_5 },
24*32cf86f6SMauro Carvalho Chehab 	{ 0x09, KEY_6 },
25*32cf86f6SMauro Carvalho Chehab 	{ 0x0b, KEY_7 },
26*32cf86f6SMauro Carvalho Chehab 	{ 0x0c, KEY_8 },
27*32cf86f6SMauro Carvalho Chehab 	{ 0x0d, KEY_9 },
28*32cf86f6SMauro Carvalho Chehab 	{ 0x06, KEY_AGAIN },		/* Recall */
29*32cf86f6SMauro Carvalho Chehab 	{ 0x0f, KEY_0 },
30*32cf86f6SMauro Carvalho Chehab 	{ 0x10, KEY_MUTE },		/* Mute */
31*32cf86f6SMauro Carvalho Chehab 	{ 0x02, KEY_RADIO },		/* TV/Radio */
32*32cf86f6SMauro Carvalho Chehab 	{ 0x1b, KEY_LANGUAGE },		/* SAP (Second Audio Program) */
33*32cf86f6SMauro Carvalho Chehab 
34*32cf86f6SMauro Carvalho Chehab 	{ 0x14, KEY_VOLUMEUP },		/* VOL+ */
35*32cf86f6SMauro Carvalho Chehab 	{ 0x17, KEY_VOLUMEDOWN },	/* VOL- */
36*32cf86f6SMauro Carvalho Chehab 	{ 0x12, KEY_CHANNELUP },	/* CH+ */
37*32cf86f6SMauro Carvalho Chehab 	{ 0x13, KEY_CHANNELDOWN },	/* CH- */
38*32cf86f6SMauro Carvalho Chehab 	{ 0x1d, KEY_ENTER },		/* Enter */
39*32cf86f6SMauro Carvalho Chehab 
40*32cf86f6SMauro Carvalho Chehab 	{ 0x1a, KEY_MODE },		/* PIP */
41*32cf86f6SMauro Carvalho Chehab 	{ 0x18, KEY_TUNER },		/* Source */
42*32cf86f6SMauro Carvalho Chehab 
43*32cf86f6SMauro Carvalho Chehab 	{ 0x1e, KEY_RECORD },		/* Record/Pause */
44*32cf86f6SMauro Carvalho Chehab 	{ 0x15, KEY_ANGLE },		/* Swap (no label on key) */
45*32cf86f6SMauro Carvalho Chehab 	{ 0x1c, KEY_PAUSE },		/* Timeshift/Pause */
46*32cf86f6SMauro Carvalho Chehab 	{ 0x19, KEY_BACK },		/* Rewind << */
47*32cf86f6SMauro Carvalho Chehab 	{ 0x0a, KEY_PLAYPAUSE },	/* Play/Pause */
48*32cf86f6SMauro Carvalho Chehab 	{ 0x1f, KEY_FORWARD },		/* Forward >> */
49*32cf86f6SMauro Carvalho Chehab 	{ 0x16, KEY_PREVIOUS },		/* Back |<< */
50*32cf86f6SMauro Carvalho Chehab 	{ 0x11, KEY_STOP },		/* Stop */
51*32cf86f6SMauro Carvalho Chehab 	{ 0x0e, KEY_NEXT },		/* End >>| */
52*32cf86f6SMauro Carvalho Chehab };
53*32cf86f6SMauro Carvalho Chehab 
54*32cf86f6SMauro Carvalho Chehab static struct rc_keymap flydvb_map = {
55*32cf86f6SMauro Carvalho Chehab 	.map = {
56*32cf86f6SMauro Carvalho Chehab 		.scan    = flydvb,
57*32cf86f6SMauro Carvalho Chehab 		.size    = ARRAY_SIZE(flydvb),
58*32cf86f6SMauro Carvalho Chehab 		.ir_type = IR_TYPE_UNKNOWN,	/* Legacy IR type */
59*32cf86f6SMauro Carvalho Chehab 		.name    = RC_MAP_FLYDVB,
60*32cf86f6SMauro Carvalho Chehab 	}
61*32cf86f6SMauro Carvalho Chehab };
62*32cf86f6SMauro Carvalho Chehab 
63*32cf86f6SMauro Carvalho Chehab static int __init init_rc_map_flydvb(void)
64*32cf86f6SMauro Carvalho Chehab {
65*32cf86f6SMauro Carvalho Chehab 	return ir_register_map(&flydvb_map);
66*32cf86f6SMauro Carvalho Chehab }
67*32cf86f6SMauro Carvalho Chehab 
68*32cf86f6SMauro Carvalho Chehab static void __exit exit_rc_map_flydvb(void)
69*32cf86f6SMauro Carvalho Chehab {
70*32cf86f6SMauro Carvalho Chehab 	ir_unregister_map(&flydvb_map);
71*32cf86f6SMauro Carvalho Chehab }
72*32cf86f6SMauro Carvalho Chehab 
73*32cf86f6SMauro Carvalho Chehab module_init(init_rc_map_flydvb)
74*32cf86f6SMauro Carvalho Chehab module_exit(exit_rc_map_flydvb)
75*32cf86f6SMauro Carvalho Chehab 
76*32cf86f6SMauro Carvalho Chehab MODULE_LICENSE("GPL");
77*32cf86f6SMauro Carvalho Chehab MODULE_AUTHOR("Mauro Carvalho Chehab <mchehab@redhat.com>");
78