1 // SPDX-License-Identifier: GPL-2.0+
3 // Copyright (C) 2018 Sean Young <sean@mess.org>
5 #include <media/rc-map.h>
6 #include <linux/module.h>
9 // Note that this remote has a stick which its own IR protocol,
10 // with 16 directions. This is not supported yet.
12 static struct rc_map_table imon_rsc
[] = {
13 { 0x801010, KEY_EXIT
},
14 { 0x80102f, KEY_POWER
},
15 { 0x80104a, KEY_SCREENSAVER
}, /* Screensaver */
16 { 0x801049, KEY_TIME
}, /* Timer */
17 { 0x801054, KEY_NUMERIC_1
},
18 { 0x801055, KEY_NUMERIC_2
},
19 { 0x801056, KEY_NUMERIC_3
},
20 { 0x801057, KEY_NUMERIC_4
},
21 { 0x801058, KEY_NUMERIC_5
},
22 { 0x801059, KEY_NUMERIC_6
},
23 { 0x80105a, KEY_NUMERIC_7
},
24 { 0x80105b, KEY_NUMERIC_8
},
25 { 0x80105c, KEY_NUMERIC_9
},
26 { 0x801081, KEY_SCREEN
}, /* Desktop */
27 { 0x80105d, KEY_NUMERIC_0
},
28 { 0x801082, KEY_MAX
},
29 { 0x801048, KEY_ESC
},
30 { 0x80104b, KEY_MEDIA
}, /* Windows key */
31 { 0x801083, KEY_MENU
},
32 { 0x801045, KEY_APPSELECT
}, /* app launcher */
33 { 0x801084, KEY_STOP
},
34 { 0x801046, KEY_CYCLEWINDOWS
},
35 { 0x801085, KEY_BACKSPACE
},
36 { 0x801086, KEY_KEYBOARD
},
37 { 0x801087, KEY_SPACE
},
38 { 0x80101e, KEY_RESERVED
}, /* shift tab */
40 { 0x80101f, KEY_TAB
},
41 { 0x80101b, BTN_LEFT
},
42 { 0x80101d, BTN_RIGHT
},
43 { 0x801016, BTN_MIDDLE
}, /* drag and drop */
44 { 0x801088, KEY_MUTE
},
45 { 0x80105e, KEY_VOLUMEDOWN
},
46 { 0x80105f, KEY_VOLUMEUP
},
47 { 0x80104c, KEY_PLAY
},
48 { 0x80104d, KEY_PAUSE
},
49 { 0x80104f, KEY_EJECTCD
},
50 { 0x801050, KEY_PREVIOUS
},
51 { 0x801051, KEY_NEXT
},
52 { 0x80104e, KEY_STOP
},
53 { 0x801052, KEY_REWIND
},
54 { 0x801053, KEY_FASTFORWARD
},
55 { 0x801089, KEY_ZOOM
} /* full screen */
58 static struct rc_map_list imon_rsc_map
= {
61 .size
= ARRAY_SIZE(imon_rsc
),
62 .rc_proto
= RC_PROTO_NEC
,
63 .name
= RC_MAP_IMON_RSC
,
67 static int __init
init_rc_map_imon_rsc(void)
69 return rc_map_register(&imon_rsc_map
);
72 static void __exit
exit_rc_map_imon_rsc(void)
74 rc_map_unregister(&imon_rsc_map
);
77 module_init(init_rc_map_imon_rsc
)
78 module_exit(exit_rc_map_imon_rsc
)
80 MODULE_LICENSE("GPL");
81 MODULE_AUTHOR("Sean Young <sean@mess.org>");