Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0+
0002 // Copyright (c) 2020 Christian Hewitt
0003 
0004 #include <media/rc-map.h>
0005 #include <linux/module.h>
0006 
0007 /*
0008  * KHAMSIN is an IR/Bluetooth RCU supplied with the SmartLabs
0009  * SML-5442TW DVB-S/VOD box. The RCU has separate IR (TV) and
0010  * BT (STB) modes. This keymap suppors the IR controls.
0011  */
0012 
0013 static struct rc_map_table khamsin[] = {
0014     { 0x70702, KEY_POWER},
0015 
0016     { 0x70701, KEY_VIDEO}, // source
0017 
0018     { 0x7076c, KEY_RED},
0019     { 0x70714, KEY_GREEN},
0020     { 0x70715, KEY_YELLOW},
0021     { 0x70716, KEY_BLUE},
0022 
0023     { 0x7071a, KEY_MENU},
0024     { 0x7074f, KEY_EPG},
0025 
0026     { 0x70760, KEY_UP },
0027     { 0x70761, KEY_DOWN },
0028     { 0x70765, KEY_LEFT },
0029     { 0x70762, KEY_RIGHT },
0030     { 0x70768, KEY_ENTER },
0031 
0032     { 0x7072d, KEY_ESC }, // back
0033 
0034     { 0x70707, KEY_VOLUMEUP },
0035     { 0x7070b, KEY_VOLUMEDOWN },
0036     { 0x7070f, KEY_MUTE },
0037     { 0x70712, KEY_CHANNELUP },
0038     { 0x70710, KEY_CHANNELDOWN },
0039 
0040     { 0x70704, KEY_1 },
0041     { 0x70705, KEY_2 },
0042     { 0x70706, KEY_3 },
0043     { 0x70708, KEY_4 },
0044     { 0x70709, KEY_5 },
0045     { 0x7070a, KEY_6 },
0046     { 0x7070c, KEY_7 },
0047     { 0x7070d, KEY_8 },
0048     { 0x7070e, KEY_9 },
0049     { 0x70711, KEY_0 },
0050 };
0051 
0052 static struct rc_map_list khamsin_map = {
0053     .map = {
0054         .scan     = khamsin,
0055         .size     = ARRAY_SIZE(khamsin),
0056         .rc_proto = RC_PROTO_NECX,
0057         .name     = RC_MAP_KHAMSIN,
0058     }
0059 };
0060 
0061 static int __init init_rc_map_khamsin(void)
0062 {
0063     return rc_map_register(&khamsin_map);
0064 }
0065 
0066 static void __exit exit_rc_map_khamsin(void)
0067 {
0068     rc_map_unregister(&khamsin_map);
0069 }
0070 
0071 module_init(init_rc_map_khamsin)
0072 module_exit(exit_rc_map_khamsin)
0073 
0074 MODULE_LICENSE("GPL");
0075 MODULE_AUTHOR("Christian Hewitt <christianshewitt@gmail.com>");