| 1 | /* $NetBSD: i8042reg.h,v 1.8 2002/01/31 13:25:20 uwe Exp $ */ |
| 2 | |
| 3 | #define KBSTATP 4 /* kbd controller status port (I) */ |
| 4 | #define KBS_DIB 0x01 /* kbd data in buffer */ |
| 5 | #define KBS_IBF 0x02 /* kbd input buffer low */ |
| 6 | #define KBS_WARM 0x04 /* kbd system flag */ |
| 7 | #define KBS_OCMD 0x08 /* kbd output buffer has command */ |
| 8 | #define KBS_NOSEC 0x10 /* kbd security lock not engaged */ |
| 9 | #define KBS_TERR 0x20 /* kbd transmission error */ |
| 10 | #define KBS_RERR 0x40 /* kbd receive error */ |
| 11 | #define KBS_PERR 0x80 /* kbd parity error */ |
| 12 | |
| 13 | #define KBCMDP 4 /* kbd controller port (O) */ |
| 14 | #define KBC_RAMREAD 0x20 /* read from RAM */ |
| 15 | #define KBC_RAMWRITE 0x60 /* write to RAM */ |
| 16 | #define KBC_AUXDISABLE 0xa7 /* disable auxiliary port */ |
| 17 | #define KBC_AUXENABLE 0xa8 /* enable auxiliary port */ |
| 18 | #define KBC_AUXTEST 0xa9 /* test auxiliary port */ |
| 19 | #define KBC_KBDECHO 0xd2 /* echo to keyboard port */ |
| 20 | #define KBC_AUXECHO 0xd3 /* echo to auxiliary port */ |
| 21 | #define KBC_AUXWRITE 0xd4 /* write to auxiliary port */ |
| 22 | #define KBC_SELFTEST 0xaa /* start self-test */ |
| 23 | #define KBC_KBDTEST 0xab /* test keyboard port */ |
| 24 | #define KBC_KBDDISABLE 0xad /* disable keyboard port */ |
| 25 | #define KBC_KBDENABLE 0xae /* enable keyboard port */ |
| 26 | #define KBC_PULSE0 0xfe /* pulse output bit 0 */ |
| 27 | #define KBC_PULSE1 0xfd /* pulse output bit 1 */ |
| 28 | #define KBC_PULSE2 0xfb /* pulse output bit 2 */ |
| 29 | #define KBC_PULSE3 0xf7 /* pulse output bit 3 */ |
| 30 | |
| 31 | #define KBDATAP 0 /* kbd data port (I) */ |
| 32 | #define KBOUTP 0 /* kbd data port (O) */ |
| 33 | |
| 34 | #define K_RDCMDBYTE 0x20 |
| 35 | #define K_LDCMDBYTE 0x60 |
| 36 | |
| 37 | #define KC8_TRANS 0x40 /* convert to old scan codes */ |
| 38 | #define KC8_MDISABLE 0x20 /* disable mouse */ |
| 39 | #define KC8_KDISABLE 0x10 /* disable keyboard */ |
| 40 | #define KC8_IGNSEC 0x08 /* ignore security lock */ |
| 41 | #define KC8_CPU 0x04 /* exit from protected mode reset */ |
| 42 | #define KC8_MENABLE 0x02 /* enable mouse interrupt */ |
| 43 | #define KC8_KENABLE 0x01 /* enable keyboard interrupt */ |
| 44 | #define CMDBYTE (KC8_TRANS|KC8_CPU|KC8_MENABLE|KC8_KENABLE) |
| 45 | |