Функция WdfUsbTargetDeviceResetPortSynchronously (wdfusb.h)

[Относится к KMDF и UMDF]

Метод WdfUsbTargetDeviceResetPortSynchronously сбрасывает USB-порт, связанный с указанным USB-устройством.

Синтаксис

NTSTATUS WdfUsbTargetDeviceResetPortSynchronously(
  [in] WDFUSBDEVICE UsbDevice
);

Параметры

[in] UsbDevice

Дескриптор объекта USB-устройства, полученный при предыдущем вызове WdfUsbTargetDeviceCreateWithParameters.

Возвращаемое значение

WdfUsbTargetDeviceResetPortSynchronously возвращает значение состояния завершения целевого объекта ввода-вывода USB, если операция выполнена успешно. В противном случае этот метод может вернуть одно из следующих значений:

Код возврата Описание
STATUS_INVALID_DEVICE_REQUEST
IrQL вызывающего абонента был недопустим.
 

Этот метод также может возвращать другие значения NTSTATUS.

Ошибка проверка возникает, если драйвер предоставляет недопустимый дескриптор объекта.

Комментарии

Метод WdfUsbTargetDeviceResetPortSynchronously сбрасывает USB-порт, отправляя запрос IOCTL_INTERNAL_USB_RESET_PORT .

Перед сбросом USB-порта целевого объекта ввода-вывода платформа отменяет все запросы ввода-вывода, которые остаются в очереди целевого объекта ввода-вывода. Драйвер не должен отправлять дополнительные запросы ввода-вывода в целевой объект ввода-вывода до тех пор, пока не будет возвращено значение WdfUsbTargetDeviceResetPortSynchronously .

Драйвер должен вызвать WdfIoTargetStop , прежде чем вызывать WdfUsbTargetDeviceResetPortSynchronously. После возврата WdfUsbTargetDeviceResetPortSynchronously драйвер может вызвать WdfIoTargetStart.

После успешной операции сброса драйвер шины повторно выберите конфигурацию и все альтернативные параметры интерфейса, которые были у устройства до операции сброса.

Дополнительные сведения о методе WdfUsbTargetDeviceResetPortSynchronously и целевых объектах USB-ввода-вывода см. в разделе Целевые объекты ввода-вывода USB.

Примеры

В следующем примере кода выполняется сброс USB-порта указанного устройства.

NTSTATUS status;

status = WdfUsbTargetDeviceResetPortSynchronously(UsbDevice);

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1,0
Минимальная версия UMDF 2,0
Верхняя часть wdfusb.h (включая Wdfusb.h)
Библиотека Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL PASSIVE_LEVEL
Правила соответствия DDI DriverCreate(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), UsbKmdfIrql(kmdf), UsbKmdfIrql2(kmdf), UsbKmdfIrqlExplicit(kmdf)

См. также раздел

WdfUsbTargetDeviceCreateWithParameters