EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION funzione di callback (sercx.h)
La funzione di callback degli eventi EvtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction viene chiamata dalla versione 2 dell'estensione del framework seriale (SerCx2) per preparare il driver del controller seriale per eseguire una transazione di ricezione DMA di sistema.
Sintassi
EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION EvtSercx2SystemDmaReceiveInitializeTransaction;
void EvtSercx2SystemDmaReceiveInitializeTransaction(
[in] SERCX2SYSTEMDMARECEIVE SystemDmaReceive,
[in] ULONG Length
)
{...}
Parametri
[in] SystemDmaReceive
Handle di SERCX2SYSTEMDMARECEIVE in un oggetto system-DMA-receive. Il driver del controller seriale precedentemente denominato il metodo SerCx2SystemDmaReceiveCreate per creare questo oggetto.
[in] Length
Numero di byte da trasferire nella transazione system-DMA-receive.
Valore restituito
nessuno
Osservazioni
Il driver del controller seriale può, come opzione, implementare questa funzione. Se implementato, il driver registra la funzione nella chiamata SerCx2SystemDmaReceiveCreate che crea l'oggetto system-DMA-receive.
Il driver deve implementare una funzione EvtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction se deve inizializzare il controller seriale e l'hardware associato in preparazione per una nuova transazione di ricezione DMA di sistema. SerCx2 chiama questa funzione, se implementata, prima dell'avvio di una transazione system-DMA-receive. In risposta a questa chiamata, il driver del controller seriale deve chiamare il metodo SerCx2SystemDmaReceiveInitializeTransactionComplete per notificare a SerCx2 al termine dell'inizializzazione.
Per altre informazioni, vedere Transazioni SerCx2 System-DMA-Receive.
Esempio
Per definire una funzione di callback EvtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction , è prima necessario fornire una dichiarazione di funzione che identifica il tipo di funzione di callback che si sta definendo. Windows fornisce un set di tipi di funzione di callback per i driver. La dichiarazione di una funzione tramite i tipi di funzione di callback consente di analizzare il codice per i driver, l'SDV ( Static Driver Verifier ) e altri strumenti di verifica di trovare errori ed è un requisito per la scrittura di driver per il sistema operativo Windows.
Ad esempio, per definire una funzione di callback EvtSerCx2EvtSerCx2SystemDmaReceiveInitializeTransaction denominataMySystemDmaReceiveInitializeTransaction
, usare il tipo di funzione EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION , come illustrato in questo esempio di codice:
EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION MySystemDmaReceiveInitializeTransaction;
Implementare quindi la funzione di callback come indicato di seguito:
_Use_decl_annotations_
VOID
MySystemDmaReceiveInitializeTransaction(
SERCX2SYSTEMDMARECEIVE SystemDmaReceive,
ULONG Length
)
{...}
Il tipo di funzione EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION è definito nel file di intestazione Sercx.h. Per identificare in modo più accurato gli errori quando si eseguono gli strumenti di analisi del codice, assicurarsi di aggiungere l'annotazione Use_decl_annotations alla definizione della funzione. L'annotazione Use_decl_annotations assicura che vengano utilizzate le annotazioni applicate al tipo di funzione EVT_SERCX2_SYSTEM_DMA_RECEIVE_INITIALIZE_TRANSACTION nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo di funzione per i driver KMDF. Per altre informazioni sulle Use_decl_annotations, vedere Annotazione del comportamento della funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 8.1. |
Piattaforma di destinazione | Desktop |
Intestazione | sercx.h |
IRQL | Chiamato in IRQL <= DISPATCH_LEVEL. |
Vedi anche
Commenti e suggerimenti
https://aka.ms/ContentUserFeedback.
Presto disponibile: Nel corso del 2024 verranno gradualmente disattivati i problemi di GitHub come meccanismo di feedback per il contenuto e ciò verrà sostituito con un nuovo sistema di feedback. Per altre informazioni, vedereInvia e visualizza il feedback per