- Implement IOCTL_KEYBOARD_QUERY_ATTRIBUTES (not used yet, see FIXME comment)

- Add KeyboardAttributes to I8042_KEYBOARD_EXTENSION

svn path=/trunk/; revision=41199
This commit is contained in:
Dmitry Chapyshev 2009-05-29 17:25:03 +00:00
parent fb2d7417a0
commit a67875884f
2 changed files with 16 additions and 0 deletions

View file

@ -147,6 +147,8 @@ typedef struct _I8042_KEYBOARD_EXTENSION
INTERNAL_I8042_HOOK_KEYBOARD KeyboardHook; /* FIXME: IsrWritePort ignored */
KDPC DpcKeyboard;
KEYBOARD_ATTRIBUTES KeyboardAttributes;
KEYBOARD_INDICATOR_PARAMETERS KeyboardIndicators;
KEYBOARD_SCAN_STATE KeyboardScanState;

View file

@ -636,6 +636,20 @@ cleanup:
case IOCTL_KEYBOARD_QUERY_ATTRIBUTES:
{
DPRINT1("IOCTL_KEYBOARD_QUERY_ATTRIBUTES not implemented\n");
#if 0
/* FIXME: KeyboardAttributes are not initialized anywhere */
TRACE_(I8042PRT, "IRP_MJ_INTERNAL_DEVICE_CONTROL / IOCTL_KEYBOARD_QUERY_ATTRIBUTES\n");
if (Stack->Parameters.DeviceIoControl.OutputBufferLength < sizeof(KEYBOARD_ATTRIBUTES))
{
Status = STATUS_BUFFER_TOO_SMALL;
break;
}
*(PKEYBOARD_ATTRIBUTES) Irp->AssociatedIrp.SystemBuffer = DeviceExtension->KeyboardAttributes;
Irp->IoStatus.Information = sizeof(KEYBOARD_ATTRIBUTES);
Status = STATUS_SUCCESS;
break;
#endif
Status = STATUS_NOT_IMPLEMENTED;
break;
}