57 lines
1.4 KiB
C
57 lines
1.4 KiB
C
|
#ifndef __LINUX_KBIO_H
|
||
|
#define __LINUX_KBIO_H
|
||
|
|
||
|
/* Return keyboard type */
|
||
|
#define KIOCTYPE _IOR('k', 9, int)
|
||
|
/* Return Keyboard layout */
|
||
|
#define KIOCLAYOUT _IOR('k', 20, int)
|
||
|
|
||
|
enum {
|
||
|
TR_NONE,
|
||
|
TR_ASCII, /* keyboard is in regular state */
|
||
|
TR_EVENT, /* keystrokes sent as firm events */
|
||
|
TR_UNTRANS_EVENT /* EVENT+up and down+no translation */
|
||
|
};
|
||
|
|
||
|
/* Return the current keyboard translation */
|
||
|
#define KIOCGTRANS _IOR('k', 5, int)
|
||
|
/* Set the keyboard translation */
|
||
|
#define KIOCTRANS _IOW('k', 0, int)
|
||
|
|
||
|
/* Send a keyboard command */
|
||
|
#define KIOCCMD _IOW('k', 8, int)
|
||
|
|
||
|
/* Return if keystrokes are being sent to /dev/kbd */
|
||
|
|
||
|
/* Set routing of keystrokes to /dev/kbd */
|
||
|
#define KIOCSDIRECT _IOW('k', 10, int)
|
||
|
|
||
|
/* Set keyboard leds */
|
||
|
#define KIOCSLED _IOW('k', 14, unsigned char)
|
||
|
|
||
|
/* Get keyboard leds */
|
||
|
#define KIOCGLED _IOR('k', 15, unsigned char)
|
||
|
|
||
|
/* Used by KIOC[GS]RATE */
|
||
|
struct kbd_rate {
|
||
|
unsigned char delay; /* Delay in Hz before first repeat. */
|
||
|
unsigned char rate; /* In characters per second (0..50). */
|
||
|
};
|
||
|
|
||
|
/* Set keyboard rate */
|
||
|
#define KIOCSRATE _IOW('k', 40, struct kbd_rate)
|
||
|
|
||
|
/* Get keyboard rate */
|
||
|
#define KIOCGRATE _IOW('k', 41, struct kbd_rate)
|
||
|
|
||
|
/* Top bit records if the key is up or down */
|
||
|
#define KBD_UP 0x80
|
||
|
|
||
|
/* Usable information */
|
||
|
#define KBD_KEYMASK 0x7f
|
||
|
|
||
|
/* All keys up */
|
||
|
#define KBD_IDLE 0x75
|
||
|
|
||
|
#endif /* __LINUX_KBIO_H */
|