1 /* nec-terratec-cinergy-xs.h - Keytable for nec_terratec_cinergy_xs Remote Controller 2 * 3 * keymap imported from ir-keymaps.c 4 * 5 * Copyright (c) 2010 by Mauro Carvalho Chehab 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 2 of the License, or 10 * (at your option) any later version. 11 */ 12 13 #include <media/rc-map.h> 14 #include <linux/module.h> 15 16 /* Terratec Cinergy Hybrid T USB XS FM 17 Mauro Carvalho Chehab 18 */ 19 20 static struct rc_map_table nec_terratec_cinergy_xs[] = { 21 22 /* Terratec Grey IR, with most keys in orange */ 23 { 0x1441, KEY_HOME}, 24 { 0x1401, KEY_POWER2}, 25 26 { 0x1442, KEY_MENU}, /* DVD menu */ 27 { 0x1443, KEY_SUBTITLE}, 28 { 0x1444, KEY_TEXT}, /* Teletext */ 29 { 0x1445, KEY_DELETE}, 30 31 { 0x1402, KEY_1}, 32 { 0x1403, KEY_2}, 33 { 0x1404, KEY_3}, 34 { 0x1405, KEY_4}, 35 { 0x1406, KEY_5}, 36 { 0x1407, KEY_6}, 37 { 0x1408, KEY_7}, 38 { 0x1409, KEY_8}, 39 { 0x140a, KEY_9}, 40 { 0x140c, KEY_0}, 41 42 { 0x140b, KEY_TUNER}, /* AV */ 43 { 0x140d, KEY_MODE}, /* A.B */ 44 45 { 0x1446, KEY_TV}, 46 { 0x1447, KEY_DVD}, 47 { 0x1449, KEY_VIDEO}, 48 { 0x144a, KEY_RADIO}, /* Music */ 49 { 0x144b, KEY_CAMERA}, /* PIC */ 50 51 { 0x1410, KEY_UP}, 52 { 0x1411, KEY_LEFT}, 53 { 0x1412, KEY_OK}, 54 { 0x1413, KEY_RIGHT}, 55 { 0x1414, KEY_DOWN}, 56 57 { 0x140f, KEY_EPG}, 58 { 0x1416, KEY_INFO}, 59 { 0x144d, KEY_BACKSPACE}, 60 61 { 0x141c, KEY_VOLUMEUP}, 62 { 0x141e, KEY_VOLUMEDOWN}, 63 64 { 0x144c, KEY_PLAY}, 65 { 0x141d, KEY_MUTE}, 66 67 { 0x141b, KEY_CHANNELUP}, 68 { 0x141f, KEY_CHANNELDOWN}, 69 70 { 0x1417, KEY_RED}, 71 { 0x1418, KEY_GREEN}, 72 { 0x1419, KEY_YELLOW}, 73 { 0x141a, KEY_BLUE}, 74 75 { 0x1458, KEY_RECORD}, 76 { 0x1448, KEY_STOP}, 77 { 0x1440, KEY_PAUSE}, 78 79 { 0x1454, KEY_LAST}, 80 { 0x144e, KEY_REWIND}, 81 { 0x144f, KEY_FASTFORWARD}, 82 { 0x145c, KEY_NEXT}, 83 84 /* Terratec Black IR, with most keys in black */ 85 { 0x04eb01, KEY_POWER2}, 86 87 { 0x04eb02, KEY_1}, 88 { 0x04eb03, KEY_2}, 89 { 0x04eb04, KEY_3}, 90 { 0x04eb05, KEY_4}, 91 { 0x04eb06, KEY_5}, 92 { 0x04eb07, KEY_6}, 93 { 0x04eb08, KEY_7}, 94 { 0x04eb09, KEY_8}, 95 { 0x04eb0a, KEY_9}, 96 { 0x04eb0c, KEY_0}, 97 98 { 0x04eb0b, KEY_TEXT}, /* TXT */ 99 { 0x04eb0d, KEY_REFRESH}, /* Refresh */ 100 101 { 0x04eb0e, KEY_HOME}, 102 { 0x04eb0f, KEY_EPG}, 103 104 { 0x04eb10, KEY_UP}, 105 { 0x04eb11, KEY_LEFT}, 106 { 0x04eb12, KEY_OK}, 107 { 0x04eb13, KEY_RIGHT}, 108 { 0x04eb14, KEY_DOWN}, 109 110 { 0x04eb15, KEY_BACKSPACE}, 111 { 0x04eb16, KEY_INFO}, 112 113 { 0x04eb17, KEY_RED}, 114 { 0x04eb18, KEY_GREEN}, 115 { 0x04eb19, KEY_YELLOW}, 116 { 0x04eb1a, KEY_BLUE}, 117 118 { 0x04eb1c, KEY_VOLUMEUP}, 119 { 0x04eb1e, KEY_VOLUMEDOWN}, 120 121 { 0x04eb1d, KEY_MUTE}, 122 123 { 0x04eb1b, KEY_CHANNELUP}, 124 { 0x04eb1f, KEY_CHANNELDOWN}, 125 126 { 0x04eb40, KEY_RECORD}, 127 { 0x04eb4c, KEY_PLAY}, 128 { 0x04eb58, KEY_PAUSE}, 129 130 { 0x04eb54, KEY_REWIND}, 131 { 0x04eb48, KEY_STOP}, 132 { 0x04eb5c, KEY_NEXT}, 133 }; 134 135 static struct rc_map_list nec_terratec_cinergy_xs_map = { 136 .map = { 137 .scan = nec_terratec_cinergy_xs, 138 .size = ARRAY_SIZE(nec_terratec_cinergy_xs), 139 .rc_type = RC_TYPE_NEC, 140 .name = RC_MAP_NEC_TERRATEC_CINERGY_XS, 141 } 142 }; 143 144 static int __init init_rc_map_nec_terratec_cinergy_xs(void) 145 { 146 return rc_map_register(&nec_terratec_cinergy_xs_map); 147 } 148 149 static void __exit exit_rc_map_nec_terratec_cinergy_xs(void) 150 { 151 rc_map_unregister(&nec_terratec_cinergy_xs_map); 152 } 153 154 module_init(init_rc_map_nec_terratec_cinergy_xs) 155 module_exit(exit_rc_map_nec_terratec_cinergy_xs) 156 157 MODULE_LICENSE("GPL"); 158 MODULE_AUTHOR("Mauro Carvalho Chehab"); 159