This source file includes following definitions.
- kbd_flag
- set_kbd_flag
- clr_kbd_flag
- chg_kbd_flag
- vc_kbd_flag
- set_vc_kbd_flag
- clr_vc_kbd_flag
- chg_vc_kbd_flag
1 #ifndef __LINUX_KEYBOARD_H
2 #define __LINUX_KEYBOARD_H
3
4
5
6
7
8
9
10
11
12
13 extern unsigned long kbd_flags;
14
15
16
17
18
19 #define KG_LSHIFT 0
20 #define KG_RSHIFT 1
21 #define KG_LCTRL 2
22 #define KG_RCTRL 3
23 #define KG_ALT 4
24 #define KG_ALTGR 5
25 #define KG_CAPSLOCK 6
26 #define KG_E0 7
27 #define KG_E1 8
28
29
30
31
32
33 struct kbd_struct {
34 unsigned long flags;
35 unsigned long default_flags;
36 unsigned char kbd_flags;
37 };
38
39 extern struct kbd_struct kbd_table[];
40
41
42
43
44
45 #define VC_SCROLLOCK 0
46 #define VC_NUMLOCK 1
47 #define VC_CAPSLOCK 2
48 #define VC_APPLIC 3
49 #define VC_CKMODE 5
50 #define VC_REPEAT 6
51 #define VC_RAW 7
52 #define VC_CRLF 8
53 #define VC_META 9
54
55 #define LED_MASK 7
56
57 #ifndef KBD_DEFFLAGS
58 #define KBD_DEFFLAGS ((1 << VC_NUMLOCK) | (1 << VC_REPEAT))
59 #endif
60
61 extern unsigned long kbd_init(unsigned long);
62
63 extern inline int kbd_flag(int flag)
64 {
65 return kbd_flags & (1 << flag);
66 }
67
68 extern inline void set_kbd_flag(int flag)
69 {
70 kbd_flags |= 1 << flag;
71 }
72
73 extern inline void clr_kbd_flag(int flag)
74 {
75 kbd_flags &= ~(1 << flag);
76 }
77
78 extern inline void chg_kbd_flag(int flag)
79 {
80 kbd_flags ^= 1 << flag;
81 }
82
83 extern inline int vc_kbd_flag(struct kbd_struct * kbd, int flag)
84 {
85 return ((kbd->flags >> flag) & 1);
86 }
87
88 extern inline void set_vc_kbd_flag(struct kbd_struct * kbd, int flag)
89 {
90 kbd->flags |= 1 << flag;
91 }
92
93 extern inline void clr_vc_kbd_flag(struct kbd_struct * kbd, int flag)
94 {
95 kbd->flags &= ~(1 << flag);
96 }
97
98 extern inline void chg_vc_kbd_flag(struct kbd_struct * kbd, int flag)
99 {
100 kbd->flags ^= 1 << flag;
101 }
102
103 #endif