Funzione SerCx2InitializeDevice (sercx.h)
Il metodo SerCx2InitializeDevice completa l'inizializzazione dell'oggetto dispositivo framework per il controller seriale.
Sintassi
NTSTATUS SerCx2InitializeDevice(
[in] WDFDEVICE Device,
[in] PSERCX2_CONFIG Config
);
Parametri
[in] Device
Handle WDFDEVICE per l'oggetto dispositivo framework che rappresenta il controller seriale. Per altre informazioni, vedere la sezione Osservazioni.
[in] Config
Puntatore a una struttura SERCX2_CONFIG allocata dal chiamante che contiene puntatori a un set di funzioni di callback degli eventi implementate dal driver del controller seriale. La versione 2 del controller del framework seriale (SerCx2) chiama queste funzioni per configurare il controller seriale ed eseguire operazioni di base indipendenti dai tipi di transazione I/O (PIO, system DMA o custom) supportati dal driver.
Valore restituito
SerCx2InitializeDevice restituisce STATUS_SUCCESS se la chiamata ha esito positivo. I valori restituiti degli errori possibili includono i codici di stato seguenti.
Codice restituito | Descrizione |
---|---|
|
Il metodo è stato chiamato in IRQL errato o il parametro Device non è un handle WDFDEVICE valido. |
|
Il valore Config->Size non è uguale a sizeof(SERCX2_CONFIG). |
|
Il membro RequestAttributes non è valido o le funzioni di callback necessarie mancano nell'elenco dei puntatori alle funzioni. Per altre informazioni, vedere la sezione Osservazioni. |
|
Sono disponibili risorse insufficienti per eseguire l'operazione richiesta. |
Commenti
Prima di chiamare questo metodo, il driver del controller seriale deve in precedenza aver chiamato il metodo SerCx2InitializeDeviceInit .
Il driver del controller seriale deve chiamare questo metodo dalla relativa funzione EvtDriverDeviceAdd callback dopo aver creato un oggetto dispositivo framework per il controller seriale. Il driver chiama in genere un metodo come WdfDeviceCreate per creare l'oggetto dispositivo framework e ottenere un handle WDFDEVICE a questo oggetto.
Tre dei puntatori di funzione nella struttura SERCX2_CONFIG sono richiesti da SerCx2. Il driver deve implementare le funzioni di callback EvtSerCx2PurgeFifos, EvtSerCx2Control e EvtSerCx2ApplyConfig . In caso contrario, la chiamata SerCx2InitializeDevice ha esito negativo e restituisce STATUS_INVALID_PARAMETER.
Se il membro RequestAttributes della struttura SERCX2_CONFIG è impostato su un valore diverso da WDF_NO_OBJECT_ATTRIBUTES, il driver non deve sovrascrivere i valori scritti nei membri ParentObject, ExecutionLevel e SyncScope di questa struttura dalla funzione WDF_OBJECT_ATTRIBUTES_INIT . In caso contrario, la chiamata SerCx2InitializeDevice ha esito negativo e restituisce STATUS_INVALID_PARAMETER.
Se il driver chiama il metodo WdfDeviceInitSetRequestAttributes per impostare gli attributi da utilizzare per gli oggetti di richiesta, gli attributi della richiesta specificati in questa chiamata devono corrispondere agli attributi della richiesta specificati dal driver nella chiamata a SerCx2InitializeDevice. Per altre informazioni, vedere SerCx2 Custom-Receive Transazioni e SerCx2 Custom-Transmit Transazioni.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 8.1. |
Piattaforma di destinazione | Universale |
Intestazione | sercx.h |
IRQL | PASSIVE_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