This source file includes following definitions.
- kbd_flag
- set_kbd_flag
- clr_kbd_flag
- chg_kbd_flag
- kbd_dead
- set_kbd_dead
- clr_kbd_dead
- chg_kbd_dead
- 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 #include <linux/interrupt.h>
5 #define set_leds() mark_bh(KEYBOARD_BH)
6
7
8
9
10
11
12
13
14
15
16 extern unsigned long kbd_flags;
17
18
19
20
21
22 #define KG_LSHIFT 0
23 #define KG_RSHIFT 1
24 #define KG_LCTRL 2
25 #define KG_RCTRL 3
26 #define KG_LALT 4
27 #define KG_RALT 5
28 #define KG_LALTGR 6
29 #define KG_RALTGR 7
30 #define KG_CAPSLOCK 8
31
32
33
34
35
36 extern unsigned long kbd_dead_keys;
37 extern unsigned long kbd_prev_dead_keys;
38
39
40
41
42 #define KGD_E0 0
43 #define KGD_E1 1
44
45
46
47
48
49 struct kbd_struct {
50 unsigned long flags;
51 unsigned long default_flags;
52 };
53
54 extern struct kbd_struct kbd_table[];
55
56
57
58
59
60 #define VC_SCROLLOCK 0
61 #define VC_NUMLOCK 1
62 #define VC_CAPSLOCK 2
63 #define VC_APPLIC 3
64 #define VC_CKMODE 5
65 #define VC_REPEAT 6
66 #define VC_RAW 7
67 #define VC_CRLF 8
68 #define VC_META 9
69 #define VC_PAUSE 10
70
71 #define LED_MASK 7
72
73 extern unsigned long kbd_init(unsigned long);
74
75 extern inline int kbd_flag(int flag)
76 {
77 return kbd_flags & (1 << flag);
78 }
79
80 extern inline void set_kbd_flag(int flag)
81 {
82 kbd_flags |= 1 << flag;
83 }
84
85 extern inline void clr_kbd_flag(int flag)
86 {
87 kbd_flags &= ~(1 << flag);
88 }
89
90 extern inline void chg_kbd_flag(int flag)
91 {
92 kbd_flags ^= 1 << flag;
93 }
94
95 extern inline int kbd_dead(int flag)
96 {
97 return kbd_prev_dead_keys & (1 << flag);
98 }
99
100 extern inline void set_kbd_dead(int flag)
101 {
102 kbd_dead_keys |= 1 << flag;
103 }
104
105 extern inline void clr_kbd_dead(int flag)
106 {
107 kbd_dead_keys &= ~(1 << flag);
108 }
109
110 extern inline void chg_kbd_dead(int flag)
111 {
112 kbd_dead_keys ^= 1 << flag;
113 }
114
115 extern inline int vc_kbd_flag(struct kbd_struct * kbd, int flag)
116 {
117 return ((kbd->flags >> flag) & 1);
118 }
119
120 extern inline void set_vc_kbd_flag(struct kbd_struct * kbd, int flag)
121 {
122 kbd->flags |= 1 << flag;
123 }
124
125 extern inline void clr_vc_kbd_flag(struct kbd_struct * kbd, int flag)
126 {
127 kbd->flags &= ~(1 << flag);
128 }
129
130 extern inline void chg_vc_kbd_flag(struct kbd_struct * kbd, int flag)
131 {
132 kbd->flags ^= 1 << flag;
133 }
134
135 #define NR_KEYS 112
136 #define NR_KEYMAPS 3
137 extern const int NR_TYPES;
138 extern const unsigned char max_vals[];
139 extern unsigned short key_map[NR_KEYMAPS][NR_KEYS];
140
141 #define KT_LATIN 0
142 #define KT_FN 1
143 #define KT_SPEC 2
144 #define KT_PAD 3
145 #define KT_DEAD 4
146 #define KT_CONS 5
147 #define KT_CUR 6
148 #define KT_SHIFT 7
149
150 #define K(t,v) (((t)<<8)|(v))
151 #define KTYP(x) ((x) >> 8)
152 #define KVAL(x) ((x) & 0xff)
153
154 #define K_F1 K(KT_FN,0)
155 #define K_F2 K(KT_FN,1)
156 #define K_F3 K(KT_FN,2)
157 #define K_F4 K(KT_FN,3)
158 #define K_F5 K(KT_FN,4)
159 #define K_F6 K(KT_FN,5)
160 #define K_F7 K(KT_FN,6)
161 #define K_F8 K(KT_FN,7)
162 #define K_F9 K(KT_FN,8)
163 #define K_F10 K(KT_FN,9)
164 #define K_F11 K(KT_FN,10)
165 #define K_F12 K(KT_FN,11)
166 #define K_F13 K(KT_FN,12)
167 #define K_F14 K(KT_FN,13)
168 #define K_F15 K(KT_FN,14)
169 #define K_F16 K(KT_FN,15)
170 #define K_F17 K(KT_FN,16)
171 #define K_F18 K(KT_FN,17)
172 #define K_F19 K(KT_FN,18)
173 #define K_F20 K(KT_FN,19)
174 #define K_FIND K(KT_FN,20)
175 #define K_INSERT K(KT_FN,21)
176 #define K_REMOVE K(KT_FN,22)
177 #define K_SELECT K(KT_FN,23)
178 #define K_PGUP K(KT_FN,24)
179 #define K_PGDN K(KT_FN,25)
180
181 #define K_HOLE K(KT_SPEC,0)
182 #define K_ENTER K(KT_SPEC,1)
183 #define K_SH_REGS K(KT_SPEC,2)
184 #define K_SH_MEM K(KT_SPEC,3)
185 #define K_SH_STAT K(KT_SPEC,4)
186 #define K_BREAK K(KT_SPEC,5)
187 #define K_CONS K(KT_SPEC,6)
188 #define K_CAPS K(KT_SPEC,7)
189 #define K_NUM K(KT_SPEC,8)
190 #define K_HOLD K(KT_SPEC,9)
191
192 #define K_P0 K(KT_PAD,0)
193 #define K_P1 K(KT_PAD,1)
194 #define K_P2 K(KT_PAD,2)
195 #define K_P3 K(KT_PAD,3)
196 #define K_P4 K(KT_PAD,4)
197 #define K_P5 K(KT_PAD,5)
198 #define K_P6 K(KT_PAD,6)
199 #define K_P7 K(KT_PAD,7)
200 #define K_P8 K(KT_PAD,8)
201 #define K_P9 K(KT_PAD,9)
202 #define K_PPLUS K(KT_PAD,10)
203 #define K_PMINUS K(KT_PAD,11)
204 #define K_PSTAR K(KT_PAD,12)
205 #define K_PSLASH K(KT_PAD,13)
206 #define K_PENTER K(KT_PAD,14)
207 #define K_PCOMMA K(KT_PAD,15)
208 #define K_PDOT K(KT_PAD,16)
209
210 #define K_DGRAVE K(KT_DEAD,0)
211 #define K_DACUTE K(KT_DEAD,1)
212 #define K_DCIRCM K(KT_DEAD,2)
213 #define K_DTILDE K(KT_DEAD,3)
214 #define K_DDIERE K(KT_DEAD,4)
215
216 #define K_DOWN K(KT_CUR,0)
217 #define K_LEFT K(KT_CUR,1)
218 #define K_RIGHT K(KT_CUR,2)
219 #define K_UP K(KT_CUR,3)
220
221 #define K_LSHIFT K(KT_SHIFT,KG_LSHIFT)
222 #define K_RSHIFT K(KT_SHIFT,KG_RSHIFT)
223 #define K_LCTRL K(KT_SHIFT,KG_LCTRL)
224 #define K_RCTRL K(KT_SHIFT,KG_RCTRL)
225 #define K_LALT K(KT_SHIFT,KG_LALT)
226 #define K_RALT K(KT_SHIFT,KG_RALT)
227 #define K_LALTGR K(KT_SHIFT,KG_LALTGR)
228 #define K_RALTGR K(KT_SHIFT,KG_RALTGR)
229
230 #define K_ALT K_LALT
231 #define K_ALTGR K_RALTGR
232
233 #endif