1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
2 | /* |
3 | * rc-map.h - define RC map names used by RC drivers |
4 | * |
5 | * Copyright (c) 2010 by Mauro Carvalho Chehab |
6 | */ |
7 | |
8 | #ifndef _MEDIA_RC_MAP_H |
9 | #define _MEDIA_RC_MAP_H |
10 | |
11 | #include <linux/input.h> |
12 | #include <uapi/linux/lirc.h> |
13 | |
14 | #define RC_PROTO_BIT_NONE 0ULL |
15 | #define RC_PROTO_BIT_UNKNOWN BIT_ULL(RC_PROTO_UNKNOWN) |
16 | #define RC_PROTO_BIT_OTHER BIT_ULL(RC_PROTO_OTHER) |
17 | #define RC_PROTO_BIT_RC5 BIT_ULL(RC_PROTO_RC5) |
18 | #define RC_PROTO_BIT_RC5X_20 BIT_ULL(RC_PROTO_RC5X_20) |
19 | #define RC_PROTO_BIT_RC5_SZ BIT_ULL(RC_PROTO_RC5_SZ) |
20 | #define RC_PROTO_BIT_JVC BIT_ULL(RC_PROTO_JVC) |
21 | #define RC_PROTO_BIT_SONY12 BIT_ULL(RC_PROTO_SONY12) |
22 | #define RC_PROTO_BIT_SONY15 BIT_ULL(RC_PROTO_SONY15) |
23 | #define RC_PROTO_BIT_SONY20 BIT_ULL(RC_PROTO_SONY20) |
24 | #define RC_PROTO_BIT_NEC BIT_ULL(RC_PROTO_NEC) |
25 | #define RC_PROTO_BIT_NECX BIT_ULL(RC_PROTO_NECX) |
26 | #define RC_PROTO_BIT_NEC32 BIT_ULL(RC_PROTO_NEC32) |
27 | #define RC_PROTO_BIT_SANYO BIT_ULL(RC_PROTO_SANYO) |
28 | #define RC_PROTO_BIT_MCIR2_KBD BIT_ULL(RC_PROTO_MCIR2_KBD) |
29 | #define RC_PROTO_BIT_MCIR2_MSE BIT_ULL(RC_PROTO_MCIR2_MSE) |
30 | #define RC_PROTO_BIT_RC6_0 BIT_ULL(RC_PROTO_RC6_0) |
31 | #define RC_PROTO_BIT_RC6_6A_20 BIT_ULL(RC_PROTO_RC6_6A_20) |
32 | #define RC_PROTO_BIT_RC6_6A_24 BIT_ULL(RC_PROTO_RC6_6A_24) |
33 | #define RC_PROTO_BIT_RC6_6A_32 BIT_ULL(RC_PROTO_RC6_6A_32) |
34 | #define RC_PROTO_BIT_RC6_MCE BIT_ULL(RC_PROTO_RC6_MCE) |
35 | #define RC_PROTO_BIT_SHARP BIT_ULL(RC_PROTO_SHARP) |
36 | #define RC_PROTO_BIT_XMP BIT_ULL(RC_PROTO_XMP) |
37 | #define RC_PROTO_BIT_CEC BIT_ULL(RC_PROTO_CEC) |
38 | #define RC_PROTO_BIT_IMON BIT_ULL(RC_PROTO_IMON) |
39 | #define RC_PROTO_BIT_RCMM12 BIT_ULL(RC_PROTO_RCMM12) |
40 | #define RC_PROTO_BIT_RCMM24 BIT_ULL(RC_PROTO_RCMM24) |
41 | #define RC_PROTO_BIT_RCMM32 BIT_ULL(RC_PROTO_RCMM32) |
42 | #define RC_PROTO_BIT_XBOX_DVD BIT_ULL(RC_PROTO_XBOX_DVD) |
43 | |
44 | #if IS_ENABLED(CONFIG_IR_RC5_DECODER) |
45 | #define __RC_PROTO_RC5_CODEC \ |
46 | (RC_PROTO_BIT_RC5 | RC_PROTO_BIT_RC5X_20 | RC_PROTO_BIT_RC5_SZ) |
47 | #else |
48 | #define __RC_PROTO_RC5_CODEC 0 |
49 | #endif |
50 | |
51 | #if IS_ENABLED(CONFIG_IR_JVC_DECODER) |
52 | #define __RC_PROTO_JVC_CODEC RC_PROTO_BIT_JVC |
53 | #else |
54 | #define __RC_PROTO_JVC_CODEC 0 |
55 | #endif |
56 | #if IS_ENABLED(CONFIG_IR_SONY_DECODER) |
57 | #define __RC_PROTO_SONY_CODEC \ |
58 | (RC_PROTO_BIT_SONY12 | RC_PROTO_BIT_SONY15 | RC_PROTO_BIT_SONY20) |
59 | #else |
60 | #define __RC_PROTO_SONY_CODEC 0 |
61 | #endif |
62 | #if IS_ENABLED(CONFIG_IR_NEC_DECODER) |
63 | #define __RC_PROTO_NEC_CODEC \ |
64 | (RC_PROTO_BIT_NEC | RC_PROTO_BIT_NECX | RC_PROTO_BIT_NEC32) |
65 | #else |
66 | #define __RC_PROTO_NEC_CODEC 0 |
67 | #endif |
68 | #if IS_ENABLED(CONFIG_IR_SANYO_DECODER) |
69 | #define __RC_PROTO_SANYO_CODEC RC_PROTO_BIT_SANYO |
70 | #else |
71 | #define __RC_PROTO_SANYO_CODEC 0 |
72 | #endif |
73 | #if IS_ENABLED(CONFIG_IR_MCE_KBD_DECODER) |
74 | #define __RC_PROTO_MCE_KBD_CODEC \ |
75 | (RC_PROTO_BIT_MCIR2_KBD | RC_PROTO_BIT_MCIR2_MSE) |
76 | #else |
77 | #define __RC_PROTO_MCE_KBD_CODEC 0 |
78 | #endif |
79 | #if IS_ENABLED(CONFIG_IR_RC6_DECODER) |
80 | #define __RC_PROTO_RC6_CODEC \ |
81 | (RC_PROTO_BIT_RC6_0 | RC_PROTO_BIT_RC6_6A_20 | \ |
82 | RC_PROTO_BIT_RC6_6A_24 | RC_PROTO_BIT_RC6_6A_32 | \ |
83 | RC_PROTO_BIT_RC6_MCE) |
84 | #else |
85 | #define __RC_PROTO_RC6_CODEC 0 |
86 | #endif |
87 | #if IS_ENABLED(CONFIG_IR_SHARP_DECODER) |
88 | #define __RC_PROTO_SHARP_CODEC RC_PROTO_BIT_SHARP |
89 | #else |
90 | #define __RC_PROTO_SHARP_CODEC 0 |
91 | #endif |
92 | #if IS_ENABLED(CONFIG_IR_XMP_DECODER) |
93 | #define __RC_PROTO_XMP_CODEC RC_PROTO_BIT_XMP |
94 | #else |
95 | #define __RC_PROTO_XMP_CODEC 0 |
96 | #endif |
97 | #if IS_ENABLED(CONFIG_IR_IMON_DECODER) |
98 | #define __RC_PROTO_IMON_CODEC RC_PROTO_BIT_IMON |
99 | #else |
100 | #define __RC_PROTO_IMON_CODEC 0 |
101 | #endif |
102 | #if IS_ENABLED(CONFIG_IR_RCMM_DECODER) |
103 | #define __RC_PROTO_RCMM_CODEC \ |
104 | (RC_PROTO_BIT_RCMM12 | RC_PROTO_BIT_RCMM24 | RC_PROTO_BIT_RCMM32) |
105 | #else |
106 | #define __RC_PROTO_RCMM_CODEC 0 |
107 | #endif |
108 | |
109 | /* All kernel-based codecs have encoders and decoders */ |
110 | #define RC_PROTO_BIT_ALL_IR_DECODER \ |
111 | (__RC_PROTO_RC5_CODEC | __RC_PROTO_JVC_CODEC | __RC_PROTO_SONY_CODEC | \ |
112 | __RC_PROTO_NEC_CODEC | __RC_PROTO_SANYO_CODEC | \ |
113 | __RC_PROTO_MCE_KBD_CODEC | __RC_PROTO_RC6_CODEC | \ |
114 | __RC_PROTO_SHARP_CODEC | __RC_PROTO_XMP_CODEC | \ |
115 | __RC_PROTO_IMON_CODEC | __RC_PROTO_RCMM_CODEC) |
116 | |
117 | #define RC_PROTO_BIT_ALL_IR_ENCODER \ |
118 | (__RC_PROTO_RC5_CODEC | __RC_PROTO_JVC_CODEC | __RC_PROTO_SONY_CODEC | \ |
119 | __RC_PROTO_NEC_CODEC | __RC_PROTO_SANYO_CODEC | \ |
120 | __RC_PROTO_MCE_KBD_CODEC | __RC_PROTO_RC6_CODEC | \ |
121 | __RC_PROTO_SHARP_CODEC | __RC_PROTO_XMP_CODEC | \ |
122 | __RC_PROTO_IMON_CODEC | __RC_PROTO_RCMM_CODEC) |
123 | |
124 | #define RC_SCANCODE_UNKNOWN(x) (x) |
125 | #define RC_SCANCODE_OTHER(x) (x) |
126 | #define RC_SCANCODE_NEC(addr, cmd) (((addr) << 8) | (cmd)) |
127 | #define RC_SCANCODE_NECX(addr, cmd) (((addr) << 8) | (cmd)) |
128 | #define RC_SCANCODE_NEC32(data) ((data) & 0xffffffff) |
129 | #define RC_SCANCODE_RC5(sys, cmd) (((sys) << 8) | (cmd)) |
130 | #define RC_SCANCODE_RC5_SZ(sys, cmd) (((sys) << 8) | (cmd)) |
131 | #define RC_SCANCODE_RC6_0(sys, cmd) (((sys) << 8) | (cmd)) |
132 | #define RC_SCANCODE_RC6_6A(vendor, sys, cmd) (((vendor) << 16) | ((sys) << 8) | (cmd)) |
133 | |
134 | /** |
135 | * struct rc_map_table - represents a scancode/keycode pair |
136 | * |
137 | * @scancode: scan code (u64) |
138 | * @keycode: Linux input keycode |
139 | */ |
140 | struct rc_map_table { |
141 | u64 scancode; |
142 | u32 keycode; |
143 | }; |
144 | |
145 | /** |
146 | * struct rc_map - represents a keycode map table |
147 | * |
148 | * @scan: pointer to struct &rc_map_table |
149 | * @size: Max number of entries |
150 | * @len: Number of entries that are in use |
151 | * @alloc: size of \*scan, in bytes |
152 | * @rc_proto: type of the remote controller protocol, as defined at |
153 | * enum &rc_proto |
154 | * @name: name of the key map table |
155 | * @lock: lock to protect access to this structure |
156 | */ |
157 | struct rc_map { |
158 | struct rc_map_table *scan; |
159 | unsigned int size; |
160 | unsigned int len; |
161 | unsigned int alloc; |
162 | enum rc_proto rc_proto; |
163 | const char *name; |
164 | spinlock_t lock; |
165 | }; |
166 | |
167 | /** |
168 | * struct rc_map_list - list of the registered &rc_map maps |
169 | * |
170 | * @list: pointer to struct &list_head |
171 | * @map: pointer to struct &rc_map |
172 | */ |
173 | struct rc_map_list { |
174 | struct list_head list; |
175 | struct rc_map map; |
176 | }; |
177 | |
178 | #ifdef CONFIG_MEDIA_CEC_RC |
179 | /* |
180 | * rc_map_list from rc-cec.c |
181 | */ |
182 | extern struct rc_map_list cec_map; |
183 | #endif |
184 | |
185 | /* Routines from rc-map.c */ |
186 | |
187 | /** |
188 | * rc_map_register() - Registers a Remote Controller scancode map |
189 | * |
190 | * @map: pointer to struct rc_map_list |
191 | */ |
192 | int rc_map_register(struct rc_map_list *map); |
193 | |
194 | /** |
195 | * rc_map_unregister() - Unregisters a Remote Controller scancode map |
196 | * |
197 | * @map: pointer to struct rc_map_list |
198 | */ |
199 | void rc_map_unregister(struct rc_map_list *map); |
200 | |
201 | /** |
202 | * rc_map_get - gets an RC map from its name |
203 | * @name: name of the RC scancode map |
204 | */ |
205 | struct rc_map *rc_map_get(const char *name); |
206 | |
207 | /* Names of the several keytables defined in-kernel */ |
208 | |
209 | #define RC_MAP_ADSTECH_DVB_T_PCI "rc-adstech-dvb-t-pci" |
210 | #define RC_MAP_ALINK_DTU_M "rc-alink-dtu-m" |
211 | #define RC_MAP_ANYSEE "rc-anysee" |
212 | #define RC_MAP_APAC_VIEWCOMP "rc-apac-viewcomp" |
213 | #define RC_MAP_ASTROMETA_T2HYBRID "rc-astrometa-t2hybrid" |
214 | #define RC_MAP_ASUS_PC39 "rc-asus-pc39" |
215 | #define RC_MAP_ASUS_PS3_100 "rc-asus-ps3-100" |
216 | #define RC_MAP_ATI_TV_WONDER_HD_600 "rc-ati-tv-wonder-hd-600" |
217 | #define RC_MAP_ATI_X10 "rc-ati-x10" |
218 | #define RC_MAP_AVERMEDIA "rc-avermedia" |
219 | #define RC_MAP_AVERMEDIA_A16D "rc-avermedia-a16d" |
220 | #define RC_MAP_AVERMEDIA_CARDBUS "rc-avermedia-cardbus" |
221 | #define RC_MAP_AVERMEDIA_DVBT "rc-avermedia-dvbt" |
222 | #define RC_MAP_AVERMEDIA_M135A "rc-avermedia-m135a" |
223 | #define RC_MAP_AVERMEDIA_M733A_RM_K6 "rc-avermedia-m733a-rm-k6" |
224 | #define RC_MAP_AVERMEDIA_RM_KS "rc-avermedia-rm-ks" |
225 | #define RC_MAP_AVERTV_303 "rc-avertv-303" |
226 | #define RC_MAP_AZUREWAVE_AD_TU700 "rc-azurewave-ad-tu700" |
227 | #define RC_MAP_BEELINK_GS1 "rc-beelink-gs1" |
228 | #define RC_MAP_BEELINK_MXIII "rc-beelink-mxiii" |
229 | #define RC_MAP_BEHOLD "rc-behold" |
230 | #define RC_MAP_BEHOLD_COLUMBUS "rc-behold-columbus" |
231 | #define RC_MAP_BUDGET_CI_OLD "rc-budget-ci-old" |
232 | #define RC_MAP_CEC "rc-cec" |
233 | #define RC_MAP_CINERGY "rc-cinergy" |
234 | #define RC_MAP_CINERGY_1400 "rc-cinergy-1400" |
235 | #define RC_MAP_CT_90405 "rc-ct-90405" |
236 | #define RC_MAP_D680_DMB "rc-d680-dmb" |
237 | #define RC_MAP_DELOCK_61959 "rc-delock-61959" |
238 | #define RC_MAP_DIB0700_NEC_TABLE "rc-dib0700-nec" |
239 | #define RC_MAP_DIB0700_RC5_TABLE "rc-dib0700-rc5" |
240 | #define RC_MAP_DIGITALNOW_TINYTWIN "rc-digitalnow-tinytwin" |
241 | #define RC_MAP_DIGITTRADE "rc-digittrade" |
242 | #define RC_MAP_DM1105_NEC "rc-dm1105-nec" |
243 | #define RC_MAP_DNTV_LIVE_DVB_T "rc-dntv-live-dvb-t" |
244 | #define RC_MAP_DNTV_LIVE_DVBT_PRO "rc-dntv-live-dvbt-pro" |
245 | #define RC_MAP_DREAMBOX "rc-dreambox" |
246 | #define RC_MAP_DTT200U "rc-dtt200u" |
247 | #define RC_MAP_DVBSKY "rc-dvbsky" |
248 | #define RC_MAP_DVICO_MCE "rc-dvico-mce" |
249 | #define RC_MAP_DVICO_PORTABLE "rc-dvico-portable" |
250 | #define RC_MAP_EMPTY "rc-empty" |
251 | #define RC_MAP_EM_TERRATEC "rc-em-terratec" |
252 | #define RC_MAP_ENCORE_ENLTV "rc-encore-enltv" |
253 | #define RC_MAP_ENCORE_ENLTV2 "rc-encore-enltv2" |
254 | #define RC_MAP_ENCORE_ENLTV_FM53 "rc-encore-enltv-fm53" |
255 | #define RC_MAP_EVGA_INDTUBE "rc-evga-indtube" |
256 | #define RC_MAP_EZTV "rc-eztv" |
257 | #define RC_MAP_FLYDVB "rc-flydvb" |
258 | #define RC_MAP_FLYVIDEO "rc-flyvideo" |
259 | #define RC_MAP_FUSIONHDTV_MCE "rc-fusionhdtv-mce" |
260 | #define RC_MAP_GADMEI_RM008Z "rc-gadmei-rm008z" |
261 | #define RC_MAP_GEEKBOX "rc-geekbox" |
262 | #define RC_MAP_GENIUS_TVGO_A11MCE "rc-genius-tvgo-a11mce" |
263 | #define RC_MAP_GOTVIEW7135 "rc-gotview7135" |
264 | #define RC_MAP_HAUPPAUGE "rc-hauppauge" |
265 | #define RC_MAP_HAUPPAUGE_NEW "rc-hauppauge" |
266 | #define RC_MAP_HISI_POPLAR "rc-hisi-poplar" |
267 | #define RC_MAP_HISI_TV_DEMO "rc-hisi-tv-demo" |
268 | #define RC_MAP_IMON_MCE "rc-imon-mce" |
269 | #define RC_MAP_IMON_PAD "rc-imon-pad" |
270 | #define RC_MAP_IMON_RSC "rc-imon-rsc" |
271 | #define RC_MAP_IODATA_BCTV7E "rc-iodata-bctv7e" |
272 | #define RC_MAP_IT913X_V1 "rc-it913x-v1" |
273 | #define RC_MAP_IT913X_V2 "rc-it913x-v2" |
274 | #define RC_MAP_KAIOMY "rc-kaiomy" |
275 | #define RC_MAP_KHADAS "rc-khadas" |
276 | #define RC_MAP_KHAMSIN "rc-khamsin" |
277 | #define RC_MAP_KWORLD_315U "rc-kworld-315u" |
278 | #define RC_MAP_KWORLD_PC150U "rc-kworld-pc150u" |
279 | #define RC_MAP_KWORLD_PLUS_TV_ANALOG "rc-kworld-plus-tv-analog" |
280 | #define RC_MAP_LEADTEK_Y04G0051 "rc-leadtek-y04g0051" |
281 | #define RC_MAP_LME2510 "rc-lme2510" |
282 | #define RC_MAP_MANLI "rc-manli" |
283 | #define RC_MAP_MECOOL_KII_PRO "rc-mecool-kii-pro" |
284 | #define RC_MAP_MECOOL_KIII_PRO "rc-mecool-kiii-pro" |
285 | #define RC_MAP_MEDION_X10 "rc-medion-x10" |
286 | #define RC_MAP_MEDION_X10_DIGITAINER "rc-medion-x10-digitainer" |
287 | #define RC_MAP_MEDION_X10_OR2X "rc-medion-x10-or2x" |
288 | #define RC_MAP_MINIX_NEO "rc-minix-neo" |
289 | #define RC_MAP_MSI_DIGIVOX_II "rc-msi-digivox-ii" |
290 | #define RC_MAP_MSI_DIGIVOX_III "rc-msi-digivox-iii" |
291 | #define RC_MAP_MSI_TVANYWHERE "rc-msi-tvanywhere" |
292 | #define RC_MAP_MSI_TVANYWHERE_PLUS "rc-msi-tvanywhere-plus" |
293 | #define RC_MAP_NEBULA "rc-nebula" |
294 | #define RC_MAP_NEC_TERRATEC_CINERGY_XS "rc-nec-terratec-cinergy-xs" |
295 | #define RC_MAP_NORWOOD "rc-norwood" |
296 | #define RC_MAP_NPGTECH "rc-npgtech" |
297 | #define RC_MAP_ODROID "rc-odroid" |
298 | #define RC_MAP_PCTV_SEDNA "rc-pctv-sedna" |
299 | #define RC_MAP_PINE64 "rc-pine64" |
300 | #define RC_MAP_PINNACLE_COLOR "rc-pinnacle-color" |
301 | #define RC_MAP_PINNACLE_GREY "rc-pinnacle-grey" |
302 | #define RC_MAP_PINNACLE_PCTV_HD "rc-pinnacle-pctv-hd" |
303 | #define RC_MAP_PIXELVIEW "rc-pixelview" |
304 | #define RC_MAP_PIXELVIEW_002T "rc-pixelview-002t" |
305 | #define RC_MAP_PIXELVIEW_MK12 "rc-pixelview-mk12" |
306 | #define RC_MAP_PIXELVIEW_NEW "rc-pixelview-new" |
307 | #define RC_MAP_POWERCOLOR_REAL_ANGEL "rc-powercolor-real-angel" |
308 | #define RC_MAP_PROTEUS_2309 "rc-proteus-2309" |
309 | #define RC_MAP_PURPLETV "rc-purpletv" |
310 | #define RC_MAP_PV951 "rc-pv951" |
311 | #define RC_MAP_RC5_TV "rc-rc5-tv" |
312 | #define RC_MAP_RC6_MCE "rc-rc6-mce" |
313 | #define RC_MAP_REAL_AUDIO_220_32_KEYS "rc-real-audio-220-32-keys" |
314 | #define RC_MAP_REDDO "rc-reddo" |
315 | #define RC_MAP_SNAPSTREAM_FIREFLY "rc-snapstream-firefly" |
316 | #define RC_MAP_STREAMZAP "rc-streamzap" |
317 | #define RC_MAP_SU3000 "rc-su3000" |
318 | #define RC_MAP_TANIX_TX3MINI "rc-tanix-tx3mini" |
319 | #define RC_MAP_TANIX_TX5MAX "rc-tanix-tx5max" |
320 | #define RC_MAP_TBS_NEC "rc-tbs-nec" |
321 | #define RC_MAP_TECHNISAT_TS35 "rc-technisat-ts35" |
322 | #define RC_MAP_TECHNISAT_USB2 "rc-technisat-usb2" |
323 | #define RC_MAP_TERRATEC_CINERGY_C_PCI "rc-terratec-cinergy-c-pci" |
324 | #define RC_MAP_TERRATEC_CINERGY_S2_HD "rc-terratec-cinergy-s2-hd" |
325 | #define RC_MAP_TERRATEC_CINERGY_XS "rc-terratec-cinergy-xs" |
326 | #define RC_MAP_TERRATEC_SLIM "rc-terratec-slim" |
327 | #define RC_MAP_TERRATEC_SLIM_2 "rc-terratec-slim-2" |
328 | #define RC_MAP_TEVII_NEC "rc-tevii-nec" |
329 | #define RC_MAP_TIVO "rc-tivo" |
330 | #define RC_MAP_TOTAL_MEDIA_IN_HAND "rc-total-media-in-hand" |
331 | #define RC_MAP_TOTAL_MEDIA_IN_HAND_02 "rc-total-media-in-hand-02" |
332 | #define RC_MAP_TREKSTOR "rc-trekstor" |
333 | #define RC_MAP_TT_1500 "rc-tt-1500" |
334 | #define RC_MAP_TWINHAN_DTV_CAB_CI "rc-twinhan-dtv-cab-ci" |
335 | #define RC_MAP_TWINHAN_VP1027_DVBS "rc-twinhan1027" |
336 | #define RC_MAP_VEGA_S9X "rc-vega-s9x" |
337 | #define RC_MAP_VIDEOMATE_K100 "rc-videomate-k100" |
338 | #define RC_MAP_VIDEOMATE_S350 "rc-videomate-s350" |
339 | #define RC_MAP_VIDEOMATE_TV_PVR "rc-videomate-tv-pvr" |
340 | #define RC_MAP_KII_PRO "rc-videostrong-kii-pro" |
341 | #define RC_MAP_WETEK_HUB "rc-wetek-hub" |
342 | #define RC_MAP_WETEK_PLAY2 "rc-wetek-play2" |
343 | #define RC_MAP_WINFAST "rc-winfast" |
344 | #define RC_MAP_WINFAST_USBII_DELUXE "rc-winfast-usbii-deluxe" |
345 | #define RC_MAP_X96MAX "rc-x96max" |
346 | #define RC_MAP_XBOX_360 "rc-xbox-360" |
347 | #define RC_MAP_XBOX_DVD "rc-xbox-dvd" |
348 | #define RC_MAP_ZX_IRDEC "rc-zx-irdec" |
349 | |
350 | /* |
351 | * Please, do not just append newer Remote Controller names at the end. |
352 | * The names should be ordered in alphabetical order |
353 | */ |
354 | |
355 | #endif /* _MEDIA_RC_MAP_H */ |
356 | |