1 | // SPDX-License-Identifier: GPL-2.0-or-later |
2 | /* |
3 | * TwinHan AzureWave AD-TU700(704J) remote controller keytable |
4 | * |
5 | * Copyright (C) 2010 Antti Palosaari <crope@iki.fi> |
6 | */ |
7 | |
8 | #include <media/rc-map.h> |
9 | #include <linux/module.h> |
10 | |
11 | static struct rc_map_table azurewave_ad_tu700[] = { |
12 | { 0x0000, KEY_TAB }, /* Tab */ |
13 | { 0x0001, KEY_NUMERIC_2 }, |
14 | { 0x0002, KEY_CHANNELDOWN }, |
15 | { 0x0003, KEY_NUMERIC_1 }, |
16 | { 0x0004, KEY_MENU }, /* Record List */ |
17 | { 0x0005, KEY_CHANNELUP }, |
18 | { 0x0006, KEY_NUMERIC_3 }, |
19 | { 0x0007, KEY_SLEEP }, /* Hibernate */ |
20 | { 0x0008, KEY_VIDEO }, /* A/V */ |
21 | { 0x0009, KEY_NUMERIC_4 }, |
22 | { 0x000a, KEY_VOLUMEDOWN }, |
23 | { 0x000c, KEY_CANCEL }, /* Cancel */ |
24 | { 0x000d, KEY_NUMERIC_7 }, |
25 | { 0x000e, KEY_AGAIN }, /* Recall */ |
26 | { 0x000f, KEY_TEXT }, /* Teletext */ |
27 | { 0x0010, KEY_MUTE }, |
28 | { 0x0011, KEY_RECORD }, |
29 | { 0x0012, KEY_FASTFORWARD }, /* FF >> */ |
30 | { 0x0013, KEY_BACK }, /* Back */ |
31 | { 0x0014, KEY_PLAY }, |
32 | { 0x0015, KEY_NUMERIC_0 }, |
33 | { 0x0016, KEY_POWER2 }, /* [red power button] */ |
34 | { 0x0017, KEY_FAVORITES }, /* Favorite List */ |
35 | { 0x0018, KEY_RED }, |
36 | { 0x0019, KEY_NUMERIC_8 }, |
37 | { 0x001a, KEY_STOP }, |
38 | { 0x001b, KEY_NUMERIC_9 }, |
39 | { 0x001c, KEY_EPG }, /* Info/EPG */ |
40 | { 0x001d, KEY_NUMERIC_5 }, |
41 | { 0x001e, KEY_VOLUMEUP }, |
42 | { 0x001f, KEY_NUMERIC_6 }, |
43 | { 0x0040, KEY_REWIND }, /* FR << */ |
44 | { 0x0041, KEY_PREVIOUS }, /* Replay */ |
45 | { 0x0042, KEY_NEXT }, /* Skip */ |
46 | { 0x0043, KEY_SUBTITLE }, /* Subtitle / CC */ |
47 | { 0x0045, KEY_KPPLUS }, /* Zoom+ */ |
48 | { 0x0046, KEY_KPMINUS }, /* Zoom- */ |
49 | { 0x0047, KEY_NEW }, /* PIP */ |
50 | { 0x0048, KEY_INFO }, /* Preview */ |
51 | { 0x0049, KEY_MODE }, /* L/R */ |
52 | { 0x004a, KEY_CLEAR }, /* Clear */ |
53 | { 0x004b, KEY_UP }, /* up arrow */ |
54 | { 0x004c, KEY_PAUSE }, |
55 | { 0x004d, KEY_ZOOM }, /* Full Screen */ |
56 | { 0x004e, KEY_LEFT }, /* left arrow */ |
57 | { 0x004f, KEY_OK }, /* Enter / ok */ |
58 | { 0x0050, KEY_LANGUAGE }, /* SAP */ |
59 | { 0x0051, KEY_DOWN }, /* down arrow */ |
60 | { 0x0052, KEY_RIGHT }, /* right arrow */ |
61 | { 0x0053, KEY_GREEN }, |
62 | { 0x0054, KEY_CAMERA }, /* Capture */ |
63 | { 0x005e, KEY_YELLOW }, |
64 | { 0x005f, KEY_BLUE }, |
65 | }; |
66 | |
67 | static struct rc_map_list azurewave_ad_tu700_map = { |
68 | .map = { |
69 | .scan = azurewave_ad_tu700, |
70 | .size = ARRAY_SIZE(azurewave_ad_tu700), |
71 | .rc_proto = RC_PROTO_NEC, |
72 | .name = RC_MAP_AZUREWAVE_AD_TU700, |
73 | } |
74 | }; |
75 | |
76 | static int __init init_rc_map_azurewave_ad_tu700(void) |
77 | { |
78 | return rc_map_register(map: &azurewave_ad_tu700_map); |
79 | } |
80 | |
81 | static void __exit exit_rc_map_azurewave_ad_tu700(void) |
82 | { |
83 | rc_map_unregister(map: &azurewave_ad_tu700_map); |
84 | } |
85 | |
86 | module_init(init_rc_map_azurewave_ad_tu700) |
87 | module_exit(exit_rc_map_azurewave_ad_tu700) |
88 | |
89 | MODULE_LICENSE("GPL" ); |
90 | MODULE_AUTHOR("Antti Palosaari <crope@iki.fi>" ); |
91 | MODULE_DESCRIPTION("TwinHan AzureWave AD-TU700(704J) remote controller keytable" ); |
92 | |