IOCTL_USB_GET_DEVICE_CHARACTERISTICS IOCTL (usbioctl.h)

The client driver sends this request to determine general characteristics about a USB device, such as maximum send and receive delays for any request.

Major code

IRP_MJ_DEVICE_CONTROL

Input / Output buffer

The AssociatedIrp.SystemBuffer member is a pointer to a caller-allocated USB_DEVICE_CHARACTERISTICS structure. On input, set Version to USB_DEVICE_CHARACTERISTICS_VERSION_1. On output Version is reset to a version less than or equal to USB_DEVICE_CHARACTERISTICS_VERSION_1; UsbDeviceCharacteristicsFlags is set to USB_DEVICE_CHARACTERISTICS_MAXIMUM_PATH_DELAYS_AVAILABLE and the remaining members of the structure is filled with delay information.

Input / Output buffer length

The size of the USB_DEVICE_CHARACTERISTICS structure.

Status block

Irp->IoStatus.Status is set to STATUS_SUCCESS if the request is successful. Otherwise, Status indicates the appropriate error condition as a NTSTATUS code.

Requirements

Requirement Value
Header usbioctl.h
IRQL <=DISPATCH_LEVEL

See also

Creating IOCTL Requests in Drivers

USB client drivers for Media-Agnostic (MA-USB)

WdfIoTargetSendInternalIoctlOthersSynchronously

WdfIoTargetSendInternalIoctlSynchronously

WdfIoTargetSendIoctlSynchronously