dff5222d3a
drivers that attach to it. This allows for other host interface chips that use the same keyboards and mice, such as the ones in the ARM IOMD20, ARM7500, and SA-1111. The PC-compatible driver is still called pckbc(4), and the new abstraction layer is "pckbport", so the child devices have moved from sys/dev/pckbc to sys/dev/pckbport, which also contains some code shared between all host controllers. To avoid incompatibility, pckbdreg.h is still installed in /usr/include/dev/pckbc. In theory, this shouldn't cause any behavioural changes in the drivers concerned. Thy just use rather more function pointers than before. Tested on i386 and (with a new host driver) acorn32. Compiled on several other affected architectures.
28 lines
1.2 KiB
C
28 lines
1.2 KiB
C
/* $NetBSD: pckbdreg.h,v 1.1 2004/03/13 17:31:33 bjh21 Exp $ */
|
|
|
|
/*
|
|
* Keyboard definitions
|
|
*/
|
|
|
|
/* keyboard commands */
|
|
#define KBC_RESET 0xFF /* reset the keyboard */
|
|
#define KBC_RESEND 0xFE /* request the keyboard resend the last byte */
|
|
#define KBC_SETDEFAULT 0xF6 /* resets keyboard to its power-on defaults */
|
|
#define KBC_DISABLE 0xF5 /* as per KBC_SETDEFAULT, but also disable key scanning */
|
|
#define KBC_ENABLE 0xF4 /* enable key scanning */
|
|
#define KBC_TYPEMATIC 0xF3 /* set typematic rate and delay */
|
|
#define KBC_SETTABLE 0xF0 /* set scancode translation table */
|
|
#define KBC_MODEIND 0xED /* set mode indicators (i.e. LEDs) */
|
|
#define KBC_ECHO 0xEE /* request an echo from the keyboard */
|
|
|
|
/* keyboard responses */
|
|
#define KBR_EXTENDED0 0xE0 /* extended key sequence */
|
|
#define KBR_EXTENDED1 0xE1 /* extended key sequence */
|
|
#define KBR_RESEND 0xFE /* needs resend of command */
|
|
#define KBR_ACK 0xFA /* received a valid command */
|
|
#define KBR_OVERRUN 0x00 /* flooded */
|
|
#define KBR_FAILURE 0xFD /* diagnostic failure */
|
|
#define KBR_BREAK 0xF0 /* break code prefix - sent on key release */
|
|
#define KBR_RSTDONE 0xAA /* reset complete */
|
|
#define KBR_ECHO 0xEE /* echo response */
|