1 // SPDX-License-Identifier: GPL-2.0+ 2 // Copyright (c) 2018 Christian Hewitt 3 4 #include <media/rc-map.h> 5 #include <linux/module.h> 6 7 /* 8 * Keymap for the Tanix TX3 mini STB remote control 9 */ 10 11 static struct rc_map_table tanix_tx3mini[] = { 12 { 0x8051, KEY_POWER }, 13 { 0x804d, KEY_MUTE }, 14 15 { 0x8009, KEY_RED }, 16 { 0x8011, KEY_GREEN }, 17 { 0x8054, KEY_YELLOW }, 18 { 0x804f, KEY_BLUE }, 19 20 { 0x8056, KEY_VOLUMEDOWN }, 21 { 0x80bd, KEY_PREVIOUS }, 22 { 0x80bb, KEY_NEXT }, 23 { 0x804e, KEY_VOLUMEUP }, 24 25 { 0x8053, KEY_HOME }, 26 { 0x801b, KEY_BACK }, 27 28 { 0x8026, KEY_UP }, 29 { 0x8028, KEY_DOWN }, 30 { 0x8025, KEY_LEFT }, 31 { 0x8027, KEY_RIGHT }, 32 { 0x800d, KEY_OK }, 33 34 { 0x8049, KEY_MENU }, 35 { 0x8052, KEY_EPG }, // mouse 36 37 { 0x8031, KEY_1 }, 38 { 0x8032, KEY_2 }, 39 { 0x8033, KEY_3 }, 40 41 { 0x8034, KEY_4 }, 42 { 0x8035, KEY_5 }, 43 { 0x8036, KEY_6 }, 44 45 { 0x8037, KEY_7 }, 46 { 0x8038, KEY_8 }, 47 { 0x8039, KEY_9 }, 48 49 { 0x8058, KEY_SUBTITLE }, // 1/a 50 { 0x8030, KEY_0 }, 51 { 0x8044, KEY_DELETE }, 52 }; 53 54 static struct rc_map_list tanix_tx3mini_map = { 55 .map = { 56 .scan = tanix_tx3mini, 57 .size = ARRAY_SIZE(tanix_tx3mini), 58 .rc_proto = RC_PROTO_NEC, 59 .name = RC_MAP_TANIX_TX3MINI, 60 } 61 }; 62 63 static int __init init_rc_map_tanix_tx3mini(void) 64 { 65 return rc_map_register(&tanix_tx3mini_map); 66 } 67 68 static void __exit exit_rc_map_tanix_tx3mini(void) 69 { 70 rc_map_unregister(&tanix_tx3mini_map); 71 } 72 73 module_init(init_rc_map_tanix_tx3mini) 74 module_exit(exit_rc_map_tanix_tx3mini) 75 76 MODULE_LICENSE("GPL"); 77 MODULE_AUTHOR("Christian Hewitt <christianshewitt@gmail.com>"); 78 MODULE_DESCRIPTION("Tanix TX3 mini STB remote controller keytable"); 79