0001
0002
0003
0004
0005
0006
0007
0008 #include <media/rc-map.h>
0009 #include <linux/module.h>
0010
0011
0012 static struct rc_map_table imon_mce[] = {
0013
0014 { 0x800ff415, KEY_REWIND },
0015 { 0x800ff414, KEY_FASTFORWARD },
0016 { 0x800ff41b, KEY_PREVIOUS },
0017 { 0x800ff41a, KEY_NEXT },
0018
0019 { 0x800ff416, KEY_PLAY },
0020 { 0x800ff418, KEY_PAUSE },
0021 { 0x800ff419, KEY_STOP },
0022 { 0x800ff417, KEY_RECORD },
0023
0024 { 0x02000052, KEY_UP },
0025 { 0x02000051, KEY_DOWN },
0026 { 0x02000050, KEY_LEFT },
0027 { 0x0200004f, KEY_RIGHT },
0028
0029 { 0x800ff41e, KEY_UP },
0030 { 0x800ff41f, KEY_DOWN },
0031 { 0x800ff420, KEY_LEFT },
0032 { 0x800ff421, KEY_RIGHT },
0033
0034
0035 { 0x800ff40b, KEY_ENTER },
0036 { 0x02000028, KEY_ENTER },
0037
0038
0039 { 0x800ff422, KEY_OK },
0040 { 0x0200002a, KEY_EXIT },
0041 { 0x800ff423, KEY_EXIT },
0042 { 0x02000029, KEY_DELETE },
0043
0044 { 0x800ff40a, KEY_DELETE },
0045
0046 { 0x800ff40e, KEY_MUTE },
0047 { 0x800ff410, KEY_VOLUMEUP },
0048 { 0x800ff411, KEY_VOLUMEDOWN },
0049 { 0x800ff412, KEY_CHANNELUP },
0050 { 0x800ff413, KEY_CHANNELDOWN },
0051
0052 { 0x0200001e, KEY_NUMERIC_1 },
0053 { 0x0200001f, KEY_NUMERIC_2 },
0054 { 0x02000020, KEY_NUMERIC_3 },
0055 { 0x02000021, KEY_NUMERIC_4 },
0056 { 0x02000022, KEY_NUMERIC_5 },
0057 { 0x02000023, KEY_NUMERIC_6 },
0058 { 0x02000024, KEY_NUMERIC_7 },
0059 { 0x02000025, KEY_NUMERIC_8 },
0060 { 0x02000026, KEY_NUMERIC_9 },
0061 { 0x02000027, KEY_NUMERIC_0 },
0062
0063 { 0x800ff401, KEY_NUMERIC_1 },
0064 { 0x800ff402, KEY_NUMERIC_2 },
0065 { 0x800ff403, KEY_NUMERIC_3 },
0066 { 0x800ff404, KEY_NUMERIC_4 },
0067 { 0x800ff405, KEY_NUMERIC_5 },
0068 { 0x800ff406, KEY_NUMERIC_6 },
0069 { 0x800ff407, KEY_NUMERIC_7 },
0070 { 0x800ff408, KEY_NUMERIC_8 },
0071 { 0x800ff409, KEY_NUMERIC_9 },
0072 { 0x800ff400, KEY_NUMERIC_0 },
0073
0074 { 0x02200025, KEY_NUMERIC_STAR },
0075 { 0x02200020, KEY_NUMERIC_POUND },
0076
0077 { 0x800ff41d, KEY_NUMERIC_STAR },
0078
0079 { 0x800ff41c, KEY_NUMERIC_POUND },
0080
0081 { 0x800ff446, KEY_TV },
0082 { 0x800ff447, KEY_AUDIO },
0083 { 0x800ff448, KEY_PVR },
0084 { 0x800ff449, KEY_CAMERA },
0085 { 0x800ff44a, KEY_VIDEO },
0086
0087 { 0x800ff424, KEY_DVD },
0088
0089 { 0x800ff425, KEY_TUNER },
0090 { 0x800ff450, KEY_RADIO },
0091
0092 { 0x800ff44c, KEY_LANGUAGE },
0093 { 0x800ff427, KEY_ZOOM },
0094
0095 { 0x800ff45b, KEY_RED },
0096 { 0x800ff45c, KEY_GREEN },
0097 { 0x800ff45d, KEY_YELLOW },
0098 { 0x800ff45e, KEY_BLUE },
0099
0100 { 0x800ff466, KEY_RED },
0101
0102 { 0x800ff468, KEY_YELLOW },
0103
0104
0105 { 0x800ff40f, KEY_INFO },
0106 { 0x800ff426, KEY_EPG },
0107 { 0x800ff45a, KEY_SUBTITLE },
0108 { 0x800ff44d, KEY_TITLE },
0109
0110 { 0x800ff40c, KEY_POWER },
0111 { 0x800ff40d, KEY_MEDIA },
0112
0113 };
0114
0115 static struct rc_map_list imon_mce_map = {
0116 .map = {
0117 .scan = imon_mce,
0118 .size = ARRAY_SIZE(imon_mce),
0119
0120 .rc_proto = RC_PROTO_RC6_MCE,
0121 .name = RC_MAP_IMON_MCE,
0122 }
0123 };
0124
0125 static int __init init_rc_map_imon_mce(void)
0126 {
0127 return rc_map_register(&imon_mce_map);
0128 }
0129
0130 static void __exit exit_rc_map_imon_mce(void)
0131 {
0132 rc_map_unregister(&imon_mce_map);
0133 }
0134
0135 module_init(init_rc_map_imon_mce)
0136 module_exit(exit_rc_map_imon_mce)
0137
0138 MODULE_LICENSE("GPL");
0139 MODULE_AUTHOR("Jarod Wilson <jarod@redhat.com>");