IOCTL_INTERNAL_USB_RESET_PORT IOCTL (usbioctl.h)

Un controlador usa la solicitud de control de E/S de IOCTL_INTERNAL_USB_RESET_PORT para restablecer el puerto ascendente del dispositivo que administra. Después de un restablecimiento correcto, el controlador de bus vuelve a seleccionar la configuración y cualquier configuración de interfaz alternativa que el dispositivo tenía antes de que se produjera el restablecimiento. Todos los identificadores de canalización, los identificadores de configuración y los identificadores de interfaz siguen siendo válidos.

Los controladores deben cancelar todas las solicitudes de E/S y esperar a que se completen antes de iniciar esta operación.

Un controlador que administra una interfaz individual en un dispositivo compuesto no puede restablecer la interfaz sin restablecer todo el dispositivo compuesto y todas sus interfaces. Por este motivo, los controladores que administran interfaces deben intentar otros tipos de recuperación de errores, como restablecer canalizaciones (_URB_PIPE_REQUEST), antes de restablecer la interfaz.

Este IOCTL debe enviarse en un IRQL de PASSIVE_LEVEL.

IOCTL_INTERNAL_USB_RESET_PORT es una solicitud de control de E/S en modo kernel. Esta solicitud tiene como destino el PDO del concentrador USB.

Código principal

IRP_MJ_INTERNAL_DEVICE_CONTROL

Búfer de entrada

Ninguno.

Longitud del búfer de entrada

Ninguno.

Búfer de salida

Ninguno.

Longitud del búfer de salida

Ninguno.

Bloque de estado

El controlador de bus o puerto establece Irp-IoStatus.Status> en STATUS_SUCCESS o el estado de error adecuado.

Requisitos

Requisito Valor
Header usbioctl.h (incluya Usbioctl.h)

Consulte también

_URB_PIPE_REQUEST