1 | /* rc-technisat-usb2.c - Keytable for SkyStar HD USB |
2 | * |
3 | * Copyright (C) 2010 Patrick Boettcher, |
4 | * Kernel Labs Inc. PO Box 745, St James, NY 11780 |
5 | * |
6 | * Development was sponsored by Technisat Digital UK Limited, whose |
7 | * registered office is Witan Gate House 500 - 600 Witan Gate West, |
8 | * Milton Keynes, MK9 1SH |
9 | * |
10 | * This program is free software; you can redistribute it and/or |
11 | * modify it under the terms of the GNU General Public License as |
12 | * published by the Free Software Foundation; either version 2 of the |
13 | * License, or (at your option) any later version. |
14 | * |
15 | * |
16 | * THIS PROGRAM IS PROVIDED "AS IS" AND BOTH THE COPYRIGHT HOLDER AND |
17 | * TECHNISAT DIGITAL UK LTD DISCLAIM ALL WARRANTIES WITH REGARD TO |
18 | * THIS PROGRAM INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY OR |
19 | * FITNESS FOR A PARTICULAR PURPOSE. NEITHER THE COPYRIGHT HOLDER |
20 | * NOR TECHNISAT DIGITAL UK LIMITED SHALL BE LIABLE FOR ANY SPECIAL, |
21 | * DIRECT, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER |
22 | * RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION |
23 | * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR |
24 | * IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS PROGRAM. See the |
25 | * GNU General Public License for more details. |
26 | */ |
27 | |
28 | #include <media/rc-map.h> |
29 | #include <linux/module.h> |
30 | |
31 | static struct rc_map_table technisat_usb2[] = { |
32 | {0x0a0c, KEY_POWER}, |
33 | {0x0a01, KEY_NUMERIC_1}, |
34 | {0x0a02, KEY_NUMERIC_2}, |
35 | {0x0a03, KEY_NUMERIC_3}, |
36 | {0x0a0d, KEY_MUTE}, |
37 | {0x0a04, KEY_NUMERIC_4}, |
38 | {0x0a05, KEY_NUMERIC_5}, |
39 | {0x0a06, KEY_NUMERIC_6}, |
40 | {0x0a38, KEY_VIDEO}, /* EXT */ |
41 | {0x0a07, KEY_NUMERIC_7}, |
42 | {0x0a08, KEY_NUMERIC_8}, |
43 | {0x0a09, KEY_NUMERIC_9}, |
44 | {0x0a00, KEY_NUMERIC_0}, |
45 | {0x0a4f, KEY_INFO}, |
46 | {0x0a20, KEY_CHANNELUP}, |
47 | {0x0a52, KEY_MENU}, |
48 | {0x0a11, KEY_VOLUMEUP}, |
49 | {0x0a57, KEY_OK}, |
50 | {0x0a10, KEY_VOLUMEDOWN}, |
51 | {0x0a2f, KEY_EPG}, |
52 | {0x0a21, KEY_CHANNELDOWN}, |
53 | {0x0a22, KEY_REFRESH}, |
54 | {0x0a3c, KEY_TEXT}, |
55 | {0x0a76, KEY_ENTER}, /* HOOK */ |
56 | {0x0a0f, KEY_HELP}, |
57 | {0x0a6b, KEY_RED}, |
58 | {0x0a6c, KEY_GREEN}, |
59 | {0x0a6d, KEY_YELLOW}, |
60 | {0x0a6e, KEY_BLUE}, |
61 | {0x0a29, KEY_STOP}, |
62 | {0x0a23, KEY_LANGUAGE}, |
63 | {0x0a53, KEY_TV}, |
64 | {0x0a0a, KEY_PROGRAM}, |
65 | }; |
66 | |
67 | static struct rc_map_list technisat_usb2_map = { |
68 | .map = { |
69 | .scan = technisat_usb2, |
70 | .size = ARRAY_SIZE(technisat_usb2), |
71 | .rc_proto = RC_PROTO_RC5, |
72 | .name = RC_MAP_TECHNISAT_USB2, |
73 | } |
74 | }; |
75 | |
76 | static int __init init_rc_map(void) |
77 | { |
78 | return rc_map_register(map: &technisat_usb2_map); |
79 | } |
80 | |
81 | static void __exit exit_rc_map(void) |
82 | { |
83 | rc_map_unregister(map: &technisat_usb2_map); |
84 | } |
85 | |
86 | module_init(init_rc_map) |
87 | module_exit(exit_rc_map) |
88 | |
89 | MODULE_AUTHOR("Patrick Boettcher <pboettcher@kernellabs.com>" ); |
90 | MODULE_LICENSE("GPL" ); |
91 | MODULE_DESCRIPTION("TechniSat TS35 remote controller keytable" ); |
92 | |