Compartir a través de


Función WdfUsbTargetDeviceResetPortSynchronously (wdfusb.h)

[Se aplica a KMDF y UMDF]

El método WdfUsbTargetDeviceResetPortSynchronously restablece el puerto USB asociado al dispositivo USB especificado.

Sintaxis

NTSTATUS WdfUsbTargetDeviceResetPortSynchronously(
  [in] WDFUSBDEVICE UsbDevice
);

Parámetros

[in] UsbDevice

Identificador de un objeto de dispositivo USB obtenido de una llamada anterior a WdfUsbTargetDeviceCreateWithParameters.

Valor devuelto

WdfUsbTargetDeviceResetPortSynchronousmente devuelve el valor de estado de finalización del destino de E/S USB si la operación se realiza correctamente. De lo contrario, este método puede devolver uno de los valores siguientes:

Código devuelto Descripción
STATUS_INVALID_DEVICE_REQUEST
El IRQL del autor de la llamada no era válido.
 

Este método también podría devolver otros valores NTSTATUS.

Se produce una comprobación de errores si el controlador proporciona un identificador de objeto no válido.

Comentarios

El método WdfUsbTargetDeviceResetPortSynchronously restablece el puerto USB enviando una solicitud de IOCTL_INTERNAL_USB_RESET_PORT .

Antes de que el marco restablezca el puerto USB del destino de E/S, cancela todas las solicitudes de E/S que permanecen en la cola del destino de E/S. El controlador no debe enviar solicitudes de E/S adicionales al destino de E/S hasta que WdfUsbTargetDeviceResetPortSynchronously devuelva.

El controlador debe llamar a WdfIoTargetStop antes de llamar a WdfUsbTargetDeviceResetPortSynchronously. Una vez que WdfUsbTargetDeviceResetPortSynchronously devuelve, el controlador puede llamar a WdfIoTargetStart.

Después de una operación de restablecimiento correcta, 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 la operación de restablecimiento.

Para obtener más información sobre el método WdfUsbTargetDeviceResetPortSynchronously y los destinos de E/S USB, consulte Destinos de E /S USB.

Ejemplos

En el ejemplo de código siguiente se restablece el puerto USB de un dispositivo especificado.

NTSTATUS status;

status = WdfUsbTargetDeviceResetPortSynchronously(UsbDevice);

Requisitos

Requisito Value
Plataforma de destino Universal
Versión mínima de KMDF 1.0
Versión mínima de UMDF 2.0
Encabezado wdfusb.h (incluya Wdfusb.h)
Library Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
Reglas de cumplimiento de DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf)

Consulte también

WdfUsbTargetDeviceCreateWithParameters