Заметка
Доступ к этой странице требует авторизации. Вы можете попробовать войти в систему или изменить каталог.
Доступ к этой странице требует авторизации. Вы можете попробовать сменить директорию.
Обратный вызов EVT_ACX_FACTORY_CIRCUIT_PREPARE_HARDWARE используется драйвером для добавления функциональных возможностей, когда фабрика каналов находится на этапе подготовки оборудования.
Синтаксис
EVT_ACX_FACTORY_CIRCUIT_PREPARE_HARDWARE EvtAcxFactoryCircuitPrepareHardware;
NTSTATUS EvtAcxFactoryCircuitPrepareHardware(
WDFDEVICE Device,
ACXFACTORYCIRCUIT Factory,
WDFCMRESLIST ResourcesRaw,
WDFCMRESLIST ResourcesTranslated
)
{...}
Параметры
Device
Объект WDFDEVICE (описанный в разделе Сводка объектов Платформы), связанный с каналом ACX.
Factory
Существующий объект фабрики каналов ACXFACTORYCIRCUIT. Дополнительные сведения о объектах ACX см. в сводке по объектам ACX.
ResourcesRaw
Список ресурсов WDF, описывающий необработанные ресурсы, которые будут использоваться для этапа подготовки оборудования. Это объект списка ресурсов платформы WDF, представляющий список аппаратных ресурсов для устройства. Дополнительные сведения о необработанных ресурсах см. в разделе Аппаратные ресурсы длядрайверов Framework-Based.
ResourcesTranslated
Список ресурсов WDF, описывающий преобразованные ресурсы, которые будут использоваться для этапа подготовки оборудования. Это объект списка ресурсов платформы WDF, представляющий список аппаратных ресурсов для устройства. Дополнительные сведения о переведенных списках ресурсов см. в необработанных и переведенных ресурсов.
Возвращаемое значение
Возвращает STATUS_SUCCESS, если вызов выполнен успешно. В противном случае возвращается соответствующий код ошибки. Дополнительные сведения см. в использовании значений NTSTATUS.
Замечания
Чтобы зарегистрировать функцию обратного вызова EvtAcxFactoryCircuitPrepareHardware, драйвер должен вызвать метод AcxFactoryCircuitInitSetAcxCircuitPnpPowerCallbacks.
Если драйвер зарегистрировал функцию обратного вызова EvtAcxFactoryCircuitPrepareHardware для ACXFACTORYCIRCUIT, платформа ACX вызывает функцию после вызова платформы WDF функции, которая вызывает функцию обратного вызова EvtDevicePrepareHardware драйвера.
Функция обратного вызова EvtAcxFactoryCircuitPrepareHardware обращается к необработанным и преобразованным аппаратным ресурсам устройства с помощью дескрипторов ResourcesRaw и ResourcesTranslated, которые он получает. Функция обратного вызова может вызывать WdfCmResourceListGetCount и WdfCmResourceListListGetDescriptor для обхода списков ресурсов. Эта функция обратного вызова не может изменять списки ресурсов.
Дополнительные сведения о списках ресурсов и порядке отображения ресурсов см. в необработанных и переведенных ресурсов.
Как правило, функция обратного вызова EvtAcxFactoryCircuitPrepareHardware вашего драйвера выполняет следующие действия.
- Сопоставляет адреса физической памяти с виртуальными адресами ACXFACTORYCIRCUIT, чтобы драйвер смог получить доступ к памяти, назначенной устройству.
- При необходимости функция обратного вызова EvtAcxFactoryCircuitPrepareHardware драйвера может очередью рабочего элемента для выполнения любых других задач конфигурации с интенсивным временем. Использование рабочего элемента для таких операций может помочь убедиться, что время запуска устройства не увеличивает время загрузки системы. Дополнительные сведения см. в разделе Using Framework Work Items.
- Как правило, все остальные операции инициализации оборудования, включая загрузку встроенного ПО, должны выполняться при каждом входе устройства в рабочее состояние (D0) и поэтому должны выполняться в функции обратного вызова EvtDeviceDeviceD0Entry.
Функция обратного вызова ResourcesRaw и ResourcesTranslated обрабатывает, что функция обратного вызова EvtAcxCircuitPrepareHardware/EvtDevicePrepareHardware остается допустимой до тех пор, пока функция обратного вызова EvtDeviceReleaseHardware драйвера не возвращается.
Если драйвер завершается ошибкой обратного вызова EvtAcxFactoryCircuitPrepareHardware, объект ACXFACTORYCIRCUIT помещается в состояние ожидания удаления.
Дополнительные сведения об аппаратных ресурсах см. в статье Введение в аппаратные ресурсы.
Дополнительные сведения о том, когда платформа ACX и WDF вызывают эти функции обратного вызова, см. в сценариях управления питанием и PnP.
Дополнительные сведения о драйверах, предоставляющих эту функцию обратного вызова, см. в поддержки PnP и управления питанием в драйвере функций.
Требования к ACX
минимальная версия ACX: 1.0
Дополнительные сведения о версиях ACX см. в обзоре версий ACX.
Требования
| Требование | Ценность |
|---|---|
| заголовка | acxcircuit.h |
| IRQL | PASSIVE_LEVEL |