1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __LINUX_KEYBOARD_H
3 #define __LINUX_KEYBOARD_H
4 
5 #include <uapi/linux/keyboard.h>
6 
7 struct notifier_block;
8 extern unsigned short *key_maps[MAX_NR_KEYMAPS];
9 extern unsigned short plain_map[NR_KEYS];
10 
11 struct keyboard_notifier_param {
12 	struct vc_data *vc;	/* VC on which the keyboard press was done */
13 	int down;		/* Pressure of the key? */
14 	int shift;		/* Current shift mask */
15 	int ledstate;		/* Current led state */
16 	unsigned int value;	/* keycode, unicode value or keysym */
17 };
18 
19 extern int register_keyboard_notifier(struct notifier_block *nb);
20 extern int unregister_keyboard_notifier(struct notifier_block *nb);
21 #endif
22