IOCTL_INTERNAL_I8042_HOOK_KEYBOARD control code

The IOCTL_INTERNAL_I8042_HOOK_KEYBOARD request adds the following callback routines to I8042prt's operation:

  • An optional initialization callback that I8042prt calls when it initializes a keyboard

  • An optional callback into the I8042prt keyboard ISR

These optional callbacks are added by an upper-level keyboard filter driver.

After I8042prt receives an IOCTL_INTERNAL_KEYBOARD_CONNECT request, it sends a synchronous IOCTL_INTERNAL_I8042_HOOK_KEYBOARD request to the top of the keyboard device stack. When the upper-level filter driver receives this request, the filter driver sets the IsrRoutine member and the InitializationRoutine member of the INTERNAL_I8042_HOOK_KEYBOARD structure that is passed with the request.

Input Parameters

Parameters.DeviceIoControl.Type3InputBuffer points to an INTERNAL_I8042_HOOK_KEYBOARD structure. This structure includes:

  • The InitializationRoutine member that points to a routine that is called by the I8042prt keyboard initialization service routine

  • The IsrRoutine member that points to a routine that is called by the I8042prt keyboard ISR

Output Parameters

None

I/O Status Block

The Status member is set to one of the following values:

STATUS_SUCCESS

The request completed successfully.

STATUS_INVALID_PARAMETER

Parameters.DeviceIoControl.Type3InputBuffer is less than the size, in bytes, of an INTERNAL_I8042_HOOK_KEYBOARD structure.

Requirements

Header

Ntdd8042.h (include Ntdd8042.h)

See also

IOCTL_INTERNAL_KEYBOARD_CONNECT

 

 

Send comments about this topic to Microsoft

Show:
© 2014 Microsoft