Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-backlight
[safe/jmp/linux-2.6] / include / linux / keyboard.h
index de76843..33a63f6 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))
@@ -416,6 +429,7 @@ extern unsigned short plain_map[NR_KEYS];
 #define K_SHIFTRLOCK   K(KT_LOCK,KG_SHIFTR)
 #define K_CTRLLLOCK    K(KT_LOCK,KG_CTRLL)
 #define K_CTRLRLOCK    K(KT_LOCK,KG_CTRLR)
+#define K_CAPSSHIFTLOCK        K(KT_LOCK,KG_CAPSSHIFT)
 
 #define K_SHIFT_SLOCK  K(KT_SLOCK,KG_SHIFT)
 #define K_CTRL_SLOCK   K(KT_SLOCK,KG_CTRL)
@@ -425,8 +439,9 @@ extern unsigned short plain_map[NR_KEYS];
 #define K_SHIFTR_SLOCK K(KT_SLOCK,KG_SHIFTR)
 #define K_CTRLL_SLOCK  K(KT_SLOCK,KG_CTRLL)
 #define K_CTRLR_SLOCK  K(KT_SLOCK,KG_CTRLR)
+#define K_CAPSSHIFT_SLOCK      K(KT_SLOCK,KG_CAPSSHIFT)
 
-#define NR_LOCK                8
+#define NR_LOCK                9
 
 #define K_BRL_BLANK     K(KT_BRL, 0)
 #define K_BRL_DOT1      K(KT_BRL, 1)
@@ -437,8 +452,10 @@ extern unsigned short plain_map[NR_KEYS];
 #define K_BRL_DOT6      K(KT_BRL, 6)
 #define K_BRL_DOT7      K(KT_BRL, 7)
 #define K_BRL_DOT8      K(KT_BRL, 8)
+#define K_BRL_DOT9      K(KT_BRL, 9)
+#define K_BRL_DOT10     K(KT_BRL, 10)
 
-#define NR_BRL         9
+#define NR_BRL         11
 
 #define MAX_DIACR      256
 #endif