Condividi tramite


EVT_ACX_FACTORY_CIRCUIT_RELEASE_HARDWARE funzione di callback (acxcircuit.h)

Il callback EVT_ACX_FACTORY_CIRCUIT_RELEASE_HARDWARE viene usato dal driver per aggiungere funzionalità quando un ACXFACTORYCIRCUIT si trova nella fase hardware di rilascio.

Sintassi

EVT_ACX_FACTORY_CIRCUIT_RELEASE_HARDWARE EvtAcxFactoryCircuitReleaseHardware;

NTSTATUS EvtAcxFactoryCircuitReleaseHardware(
  WDFDEVICE Device,
  ACXFACTORYCIRCUIT Factory,
  WDFCMRESLIST ResourcesTranslated
)
{...}

Parametri

Device

Oggetto WDFDEVICE (descritto in Riepilogo degli oggetti framework) associato al circuito ACX.

Factory

Oggetto ACXFACTORYCIRCUIT della factory del circuito esistente. Per altre informazioni sugli oggetti ACX, vedere Riepilogo degli oggetti ACX.

ResourcesTranslated

Elenco di risorse WDF che descrive le risorse tradotte da usare per la fase di preparazione dell'hardware. Si tratta di un oggetto elenco di risorse del framework WDF che rappresenta un elenco di risorse hardware per un dispositivo. Per altre informazioni sugli elenchi di risorse tradotte, vedere risorse non elaborate e tradotte.

Valore restituito

Restituisce STATUS_SUCCESS se la chiamata ha avuto esito positivo. In caso contrario, restituisce un codice di errore appropriato. Per altre informazioni, vedere Uso di valori NTSTATUS.

Osservazioni

Per registrare una funzione di callback EvtAcxFactoryCircuitReleaseHardware, il driver deve chiamare AcxFactoryCircuitInitSetAcxCircuitPnpPowerCallbacks.

Se un driver ha registrato una funzione di callback EvtAcxFactoryCircuitReleaseHardware, il framework lo chiama durante le transizioni seguenti:

  • Ribilanciamento delle risorse
  • Rimozione ordinata
  • Rimozione a sorpresa

Il framework ACX chiama la funzione di callback EvtAcxFactoryCircuitReleaseHardware dopo che il framework WDF ha interrotto l'invio di richieste di I/O al dispositivo, eventuali interrupt assegnati al dispositivo sono stati disabilitati e disconnessi e il dispositivo è stato disattivato.

Il framework ACX chiama la funzione di callback EvtAcxFactoryCircuitReleaseHardware prima che il framework WDF chiami la funzione di callback evtDeviceReleaseHardware del driver.

Quando il framework chiama evtAcxFactoryCircuitReleaseHardware il PDO per il dispositivo esiste ancora e può essere sottoposto a query per le informazioni sul dispositivo disponibili nello stato spento, ad esempio lo stato di configurazione PCI.

Inoltre, le risorse hardware tradotte fornite dal framework a EvtDeviceReleaseHardware sono ancora assegnate al dispositivo. Lo scopo principale di questa funzione di callback è rilasciare tali risorse e in particolare per annullare il mapping delle risorse di memoria mappate dalla funzione di callback EvtAcxCircuitPrepareHardware del driver. Il driver può anche usare questo callback per eseguire qualsiasi altra attività di gestione ACXCIRCUIT che potrebbe essere necessaria nello stato spento. In genere, tutte le altre operazioni di arresto hardware devono essere eseguite nella funzione di callback EvtDeviceD0Exit del driver.

Il framework ACX chiama sempre la funzione di callback EvtAcxFactoryCircuitReleaseHardware del driver se è stata chiamata la funzione di callback EvtAcxFactoryCircuitPrepareHardware del driver, a meno che non venga restituito un codice di errore.

Per altre informazioni su quando il framework ACX e WDF chiamano queste funzioni di callback, vedere Scenari di PnP e risparmio energia.

Per altre informazioni sulle risorse hardware, vedere Introduzione alle risorse hardware.

Per altre informazioni sui driver che forniscono questa funzione di callback, vedere Supporto di PnP e risparmio energia in Driver di funzione.

Requisiti ACX

versione minima di ACX: 1.0

Per altre informazioni sulle versioni di ACX, vedere panoramica della versione ACX.

Fabbisogno

Requisito Valore
intestazione acxcircuit.h
IRQL PASSIVE_LEVEL

Vedere anche