aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/keyboard.h11
-rw-r--r--include/linux/notifier.h9
2 files changed, 20 insertions, 0 deletions
diff --git a/include/linux/keyboard.h b/include/linux/keyboard.h
index 33b5c2e325b9..65c2d70853e9 100644
--- a/include/linux/keyboard.h
+++ b/include/linux/keyboard.h
@@ -23,10 +23,21 @@
23#define MAX_NR_OF_USER_KEYMAPS 256 /* should be at least 7 */ 23#define MAX_NR_OF_USER_KEYMAPS 256 /* should be at least 7 */
24 24
25#ifdef __KERNEL__ 25#ifdef __KERNEL__
26struct notifier_block;
26extern const int NR_TYPES; 27extern const int NR_TYPES;
27extern const int max_vals[]; 28extern const int max_vals[];
28extern unsigned short *key_maps[MAX_NR_KEYMAPS]; 29extern unsigned short *key_maps[MAX_NR_KEYMAPS];
29extern unsigned short plain_map[NR_KEYS]; 30extern unsigned short plain_map[NR_KEYS];
31
32struct keyboard_notifier_param {
33 struct vc_data *vc; /* VC on which the keyboard press was done */
34 int down; /* Pressure of the key? */
35 int shift; /* Current shift mask */
36 unsigned int value; /* keycode, unicode value or keysym */
37};
38
39extern int register_keyboard_notifier(struct notifier_block *nb);
40extern int unregister_keyboard_notifier(struct notifier_block *nb);
30#endif 41#endif
31 42
32#define MAX_NR_FUNC 256 /* max nr of strings assigned to keys */ 43#define MAX_NR_FUNC 256 /* max nr of strings assigned to keys */
diff --git a/include/linux/notifier.h b/include/linux/notifier.h
index fad7ff17e468..bd3788084fa9 100644
--- a/include/linux/notifier.h
+++ b/include/linux/notifier.h
@@ -231,5 +231,14 @@ static inline int notifier_to_errno(int ret)
231#define PM_SUSPEND_PREPARE 0x0003 /* Going to suspend the system */ 231#define PM_SUSPEND_PREPARE 0x0003 /* Going to suspend the system */
232#define PM_POST_SUSPEND 0x0004 /* Suspend finished */ 232#define PM_POST_SUSPEND 0x0004 /* Suspend finished */
233 233
234/* Console keyboard events.
235 * Note: KBD_KEYCODE is always sent before KBD_UNBOUND_KEYCODE, KBD_UNICODE and
236 * KBD_KEYSYM. */
237#define KBD_KEYCODE 0x0001 /* Keyboard keycode, called before any other */
238#define KBD_UNBOUND_KEYCODE 0x0002 /* Keyboard keycode which is not bound to any other */
239#define KBD_UNICODE 0x0003 /* Keyboard unicode */
240#define KBD_KEYSYM 0x0004 /* Keyboard keysym */
241#define KBD_POST_KEYSYM 0x0005 /* Called after keyboard keysym interpretation */
242
234#endif /* __KERNEL__ */ 243#endif /* __KERNEL__ */
235#endif /* _LINUX_NOTIFIER_H */ 244#endif /* _LINUX_NOTIFIER_H */