1 // SPDX-License-Identifier: GPL-2.0+ 2 // 3 // Copyright (C) 2019 Christian Hewitt <christianshewitt@gmail.com> 4 5 /* 6 * Keytable for the Khadas VIM/EDGE SBC remote control 7 */ 8 9 #include <media/rc-map.h> 10 #include <linux/module.h> 11 12 static struct rc_map_table khadas[] = { 13 { 0x14, KEY_POWER }, 14 15 { 0x03, KEY_UP }, 16 { 0x02, KEY_DOWN }, 17 { 0x0e, KEY_LEFT }, 18 { 0x1a, KEY_RIGHT }, 19 { 0x07, KEY_OK }, 20 21 { 0x01, KEY_BACK }, 22 { 0x5b, KEY_MUTE }, // mouse 23 { 0x13, KEY_MENU }, 24 25 { 0x58, KEY_VOLUMEDOWN }, 26 { 0x0b, KEY_VOLUMEUP }, 27 28 { 0x48, KEY_HOME }, 29 }; 30 31 static struct rc_map_list khadas_map = { 32 .map = { 33 .scan = khadas, 34 .size = ARRAY_SIZE(khadas), 35 .rc_proto = RC_PROTO_NEC, 36 .name = RC_MAP_KHADAS, 37 } 38 }; 39 40 static int __init init_rc_map_khadas(void) 41 { 42 return rc_map_register(&khadas_map); 43 } 44 45 static void __exit exit_rc_map_khadas(void) 46 { 47 rc_map_unregister(&khadas_map); 48 } 49 50 module_init(init_rc_map_khadas) 51 module_exit(exit_rc_map_khadas) 52 53 MODULE_LICENSE("GPL"); 54 MODULE_AUTHOR("Christian Hewitt <christianshewitt@gmail.com>"); 55 MODULE_DESCRIPTION("Khadas VIM/EDGE SBC remote controller keytable"); 56