функция обратного вызова EVT_UCX_CONTROLLER_RESET (ucxcontroller.h)
Реализация драйвера клиента, вызываемая UCX для сброса контроллера.
Синтаксис
EVT_UCX_CONTROLLER_RESET EvtUcxControllerReset;
void EvtUcxControllerReset(
[in] UCXCONTROLLER UcxController
)
{...}
Параметры
[in] UcxController
Дескриптор контроллера UCX, полученного драйвером клиента в предыдущем вызове метода UcxControllerCreate.
Возвращаемое значение
Никакой
Замечания
Драйвер клиента UCX регистрирует свою реализацию EVT_UCX_CONTROLLER_RESET с расширением контроллера USB-узла (UCX), вызвав метод UcxControllerCreate.
Драйвер клиента указывает на завершение этого события путем вызова метода UcxControllerResetComplete. Это гарантирует, что UCX не вызывает EVT_UCX_CONTROLLER_RESET второй раз до завершения обратного вызова события.
Если драйвер клиента вызывает UcxControllerNeedsReset, UCX вызывает эту функцию обратного вызова события. Однако UCX может вызывать эту функцию обратного вызова события, даже если драйвер клиента не вызвал UcxControllerNeedsReset.
Примеры
VOID
Controller_EvtControllerReset(
UCXCONTROLLER UcxController
)
{
UCX_CONTROLLER_RESET_COMPLETE_INFO controllerResetCompleteInfo;
//
// TODO: Reset the controller
//
//
// TODO: Were devices and endpoints programmed in the controller before the reset
// still programmed in the controller after the reset?
//
UCX_CONTROLLER_RESET_COMPLETE_INFO_INIT(&controllerResetCompleteInfo,
UcxControllerStateLost,
TRUE); // reset due to UCX, received EvtReset after WDF power-up
DbgTrace(TL_INFO, Controller, "Controller_EvtControllerReset");
UcxControllerResetComplete(UcxController, &controllerResetCompleteInfo);
}
Требования
Требование | Ценность |
---|---|
целевая платформа | Виндоус |
минимальная версия KMDF | 1.0 |
минимальная версия UMDF | 2.0 |
заголовка | ucxcontroller.h (include Ucxclass.h) |
IRQL | PASSIVE_LEVEL |