INTERNAL_I8042_HOOK_KEYBOARD structure (ntdd8042.h)
INTERNAL_I8042_HOOK_KEYBOARD is used by I8042prt to connect optional callback routines that supplement keyboard initialization and the keyboard ISR. The callbacks can be supplied by an optional, vendor-supplied, upper-level filter driver.
Syntax
typedef struct _INTERNAL_I8042_HOOK_KEYBOARD {
OUT PVOID Context;
OUT PI8042_KEYBOARD_INITIALIZATION_ROUTINE InitializationRoutine;
OUT PI8042_KEYBOARD_ISR IsrRoutine;
IN PI8042_ISR_WRITE_PORT IsrWritePort;
IN PI8042_QUEUE_PACKET QueueKeyboardPacket;
IN PVOID CallContext;
} INTERNAL_I8042_HOOK_KEYBOARD, *PINTERNAL_I8042_HOOK_KEYBOARD;
Members
Context
Pointer, if non-NULL, to the context that must be used with the InitializationRoutine and IsrRoutine routines. Otherwise, Context is NULL.
InitializationRoutine
Pointer, if non-NULL, to an optional PI8042_KEYBOARD_INITIALIZATION_ROUTINEcallback. I8042prt uses this callback to initialize a device after the device is reset. Otherwise, IntializatonRoutine is NULL.
IsrRoutine
Pointer, if non-NULL, to an optional PI8042_KEYBOARD_ISR callback that customizes the operation of the I8042prt keyboard ISR. Otherwise, IsrRoutine is NULL.
IsrWritePort
Pointer to the system-supplied PI8042_ISR_WRITE_PORT callback, which writes data to a keyboard.
QueueKeyboardPacket
Pointer to the system-supplied PI8042_QUEUE_PACKET callback, which queues a keyboard input data packet for processing by the keyboard's ISR deferred procedure call.
CallContext
Pointer to the context that must be used with the IsrWritePort and QueueKeyboardPacket routines.
Remarks
This structure is only used with an IOCTL_INTERNAL_I8042_HOOK_KEYBOARD request.
Context, InitializationRoutine, and IsrRoutine can be supplied by an optional, vendor-supplied, upper-level filter driver.
IsrWritePort, QueueKeyboardPacket, and CallContext are supplied by I8042prt.
Requirements
Requirement | Value |
---|---|
Header | ntdd8042.h (include Ntdd8042.h) |
See also
IOCTL_INTERNAL_I8042_HOOK_KEYBOARD