функция обратного вызова EVT_ACX_FACTORY_CIRCUIT_RELEASE_HARDWARE (acxcircuit.h)
Обратный вызов EVT_ACX_FACTORY_CIRCUIT_RELEASE_HARDWARE используется драйвером для добавления функциональных возможностей, когда ACXFACTORYCIRCUIT находится на этапе выпуска оборудования.
Синтаксис
EVT_ACX_FACTORY_CIRCUIT_RELEASE_HARDWARE EvtAcxFactoryCircuitReleaseHardware;
NTSTATUS EvtAcxFactoryCircuitReleaseHardware(
WDFDEVICE Device,
ACXFACTORYCIRCUIT Factory,
WDFCMRESLIST ResourcesTranslated
)
{...}
Параметры
Device
Объект WDFDEVICE (описан в разделе Сводка по объектам платформы), связанный с каналом ACX.
Factory
Существующий объект ACXFACTORYCIRCUIT фабрики цепи. (Дополнительные сведения об объектах ACX см. в разделе Сводка по объектам ACX.
ResourcesTranslated
Список ресурсов WDF, описывающий преобразованные ресурсы, которые будут использоваться на этапе подготовки оборудования. Это объект списка ресурсов платформы WDF, представляющий список аппаратных ресурсов для устройства. Дополнительные сведения о переводимых списках ресурсов см. в разделе Необработанные и переведенные ресурсы.
Возвращаемое значение
Возвращает значение STATUS_SUCCESS
, если вызов был выполнен успешно. В противном случае возвращается соответствующий код ошибки. Дополнительные сведения см. в разделе Использование значений NTSTATUS.
Комментарии
Чтобы зарегистрировать функцию обратного вызова EvtAcxFactoryCircuitReleaseHardware, драйвер должен вызвать AcxFactoryCircuitInitSetAcxCircuitPnpPowerCallbacks.
Если драйвер зарегистрировал функцию обратного вызова EvtAcxFactoryCircuitReleaseHardware, платформа вызывает ее во время следующих переходов:
- Перебалансирование ресурсов
- Упорядочение удаления
- Неожиданное удаление
Платформа ACX вызывает функцию обратного вызова EvtAcxFactoryCircuitReleaseHardware после того, как платформа WDF перестала отправлять запросы ввода-вывода на устройство, все прерывания, назначенные устройству, были отключены и отключены, а устройство отключено.
Платформа ACX вызывает функцию обратного вызова EvtAcxFactoryCircuitReleaseHardware, прежде чем платформа WDF вызывает функцию обратного вызова EvtDeviceReleaseHardware драйвера.
Когда платформа вызывает EvtAcxFactoryCircuitReleaseHardware, PDO для устройства по-прежнему существует, и его можно запросить сведения об устройстве, доступные в отключенном состоянии, например состояние конфигурации PCI.
Кроме того, преобразованные аппаратные ресурсы, предоставляемые платформой evtDeviceReleaseHardware, по-прежнему назначаются устройству. Основная цель этой функции обратного вызова — освободить эти ресурсы и, в частности, отменить сопоставление ресурсов памяти, сопоставленных функцией обратного вызова EvtAcxCircuitPrepareHardware драйвера. Драйвер также может использовать этот обратный вызов для выполнения любых других действий управления ACXCIRCUIT, которые могут потребоваться в состоянии выключения питания. Как правило, все остальные операции завершения работы оборудования должны выполняться в функции обратного вызова EvtDeviceD0Exit драйвера.
Платформа ACX всегда вызывает функцию обратного вызова EvtAcxFactoryCircuitReleaseHardware драйвера, если была вызвана функция обратного вызова EvtAcxFactoryCircuitPrepareHardware драйвера, если evtAcxFactoryCircuitPrepareHardware не вернул код сбоя.
Дополнительные сведения о том, когда платформа ACX и WDF вызывают эти функции обратного вызова, см. в статье Сценарии PnP и управления питанием.
Дополнительные сведения об аппаратных ресурсах см. в статье Введение в аппаратные ресурсы.
Дополнительные сведения о драйверах, предоставляющих эту функцию обратного вызова, см. в разделе Поддержка PnP и управления питанием в драйвере функций.
Требования к ACX
Минимальная версия ACX: 1.0
Дополнительные сведения о версиях ACX см. в статье Обзор версий ACX.
Требования
Требование | Значение |
---|---|
Заголовок | acxcircuit.h |
IRQL | PASSIVE_LEVEL |