Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland...
[sfrench/cifs-2.6.git] / include / linux / keyboard.h
index 33b5c2e325b92b3d14800ad83b8e1c2406103654..33a63f62d57fe3c375e45abe183bddbf5cafab7c 100644 (file)
 #define MAX_NR_OF_USER_KEYMAPS 256     /* should be at least 7 */
 
 #ifdef __KERNEL__
+struct notifier_block;
 extern const int NR_TYPES;
 extern const int max_vals[];
 extern unsigned short *key_maps[MAX_NR_KEYMAPS];
 extern unsigned short plain_map[NR_KEYS];
+
+struct keyboard_notifier_param {
+       struct vc_data *vc;     /* VC on which the keyboard press was done */
+       int down;               /* Pressure of the key? */
+       int shift;              /* Current shift mask */
+       int ledstate;           /* Current led state */
+       unsigned int value;     /* keycode, unicode value or keysym */
+};
+
+extern int register_keyboard_notifier(struct notifier_block *nb);
+extern int unregister_keyboard_notifier(struct notifier_block *nb);
 #endif
 
 #define MAX_NR_FUNC    256     /* max nr of strings assigned to keys */
@@ -44,6 +56,7 @@ extern unsigned short plain_map[NR_KEYS];
 #define KT_ASCII       9
 #define KT_LOCK                10
 #define KT_SLOCK       12
+#define KT_DEAD2       13
 #define KT_BRL         14
 
 #define K(t,v)         (((t)<<8)|(v))