92 lines · c
1// SPDX-License-Identifier: GPL-2.0-or-later2/* ITE Generic remotes Version 23 *4 * Copyright (C) 2012 Malcolm Priestley (tvboxspy@gmail.com)5 */6 7#include <media/rc-map.h>8#include <linux/module.h>9 10 11static struct rc_map_table it913x_v2_rc[] = {12 /* Type 1 */13 /* 9005 remote */14 { 0x807f12, KEY_POWER2 }, /* Power (RED POWER BUTTON)*/15 { 0x807f1a, KEY_VIDEO }, /* Source */16 { 0x807f1e, KEY_MUTE }, /* Mute */17 { 0x807f01, KEY_RECORD }, /* Record */18 { 0x807f02, KEY_CHANNELUP }, /* Channel+ */19 { 0x807f03, KEY_TIME }, /* TimeShift */20 { 0x807f04, KEY_VOLUMEUP }, /* Volume- */21 { 0x807f05, KEY_SCREEN }, /* FullScreen */22 { 0x807f06, KEY_VOLUMEDOWN }, /* Volume- */23 { 0x807f07, KEY_NUMERIC_0 }, /* 0 */24 { 0x807f08, KEY_CHANNELDOWN }, /* Channel- */25 { 0x807f09, KEY_PREVIOUS }, /* Recall */26 { 0x807f0a, KEY_NUMERIC_1 }, /* 1 */27 { 0x807f1b, KEY_NUMERIC_2 }, /* 2 */28 { 0x807f1f, KEY_NUMERIC_3 }, /* 3 */29 { 0x807f0c, KEY_NUMERIC_4 }, /* 4 */30 { 0x807f0d, KEY_NUMERIC_5 }, /* 5 */31 { 0x807f0e, KEY_NUMERIC_6 }, /* 6 */32 { 0x807f00, KEY_NUMERIC_7 }, /* 7 */33 { 0x807f0f, KEY_NUMERIC_8 }, /* 8 */34 { 0x807f19, KEY_NUMERIC_9 }, /* 9 */35 36 /* Type 2 */37 /* keys stereo, snapshot unassigned */38 { 0x866b00, KEY_NUMERIC_0 },39 { 0x866b01, KEY_NUMERIC_1 },40 { 0x866b02, KEY_NUMERIC_2 },41 { 0x866b03, KEY_NUMERIC_3 },42 { 0x866b04, KEY_NUMERIC_4 },43 { 0x866b05, KEY_NUMERIC_5 },44 { 0x866b06, KEY_NUMERIC_6 },45 { 0x866b07, KEY_NUMERIC_7 },46 { 0x866b08, KEY_NUMERIC_8 },47 { 0x866b09, KEY_NUMERIC_9 },48 { 0x866b12, KEY_POWER },49 { 0x866b13, KEY_MUTE },50 { 0x866b0a, KEY_PREVIOUS }, /* Recall */51 { 0x866b1e, KEY_PAUSE },52 { 0x866b0c, KEY_VOLUMEUP },53 { 0x866b18, KEY_VOLUMEDOWN },54 { 0x866b0b, KEY_CHANNELUP },55 { 0x866b18, KEY_CHANNELDOWN },56 { 0x866b10, KEY_ZOOM },57 { 0x866b1d, KEY_RECORD },58 { 0x866b0e, KEY_STOP },59 { 0x866b11, KEY_EPG},60 { 0x866b1a, KEY_FASTFORWARD },61 { 0x866b0f, KEY_REWIND },62 { 0x866b1c, KEY_TV },63 { 0x866b1b, KEY_TEXT },64 65};66 67static struct rc_map_list it913x_v2_map = {68 .map = {69 .scan = it913x_v2_rc,70 .size = ARRAY_SIZE(it913x_v2_rc),71 .rc_proto = RC_PROTO_NECX,72 .name = RC_MAP_IT913X_V2,73 }74};75 76static int __init init_rc_it913x_v2_map(void)77{78 return rc_map_register(&it913x_v2_map);79}80 81static void __exit exit_rc_it913x_v2_map(void)82{83 rc_map_unregister(&it913x_v2_map);84}85 86module_init(init_rc_it913x_v2_map)87module_exit(exit_rc_it913x_v2_map)88 89MODULE_LICENSE("GPL");90MODULE_AUTHOR("Malcolm Priestley tvboxspy@gmail.com");91MODULE_DESCRIPTION("it913x-v2 remote controller keytable");92