GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION funzione di callback (gpioclx.h)

La funzione di callback dell'evento CLIENT_QueryControllerBasicInformation recupera gli attributi hardware del controller di I/O (GPIO) per utilizzo generico.

Sintassi

GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION GpioClientQueryControllerBasicInformation;

NTSTATUS GpioClientQueryControllerBasicInformation(
  [in]  PVOID Context,
  [out] PCLIENT_CONTROLLER_BASIC_INFORMATION Information
)
{...}

Parametri

[in] Context

Puntatore al contesto del dispositivo del controller GPIO.

[out] Information

Puntatore a una struttura CLIENT_CONTROLLER_BASIC_INFORMATION allocata dal chiamante. La funzione CLIENT_QueryControllerBasicInformation scrive gli attributi hardware del controller GPIO e le informazioni di configurazione in questa struttura.

Valore restituito

La funzione CLIENT_QueryControllerBasicInformation restituisce STATUS_SUCCESS se la chiamata ha esito positivo. In caso contrario, restituisce un codice di errore appropriato.

Commenti

Questa funzione di callback viene implementata dal driver del controller GPIO. L'estensione del framework GPIO (GpioClx) chiama questa funzione.

La funzione di callback CLIENT_QueryControllerBasicInformation deve impostare tutti i membri della struttura CLIENT_CONTROLLER_BASIC_INFORMATION , inclusi i membri Version e Size . GpioClx non inizializza il membro Size prima di chiamare questa funzione, ma il buffer a cui punta il parametro Information deve essere sufficiente per contenere la versione di questa struttura usata dal driver del controller GPIO.

Per registrare la funzione di callback del driver CLIENT_QueryControllerBasicInformation , chiamare il metodo GPIO_CLX_RegisterClient . Questo metodo accetta, come parametro di input, un puntatore a una struttura GPIO_CLIENT_REGISTRATION_PACKET che contiene un puntatore alla funzione CLIENT_QueryControllerBasicInformation .

Esempio

Per definire una funzione di callback CLIENT_QueryControllerBasicInformation , è prima necessario specificare 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 usando i tipi di funzione callback consente l'analisi del codice per i driver, il verifica driver statico (SDV) e altri strumenti di verifica trovano errori ed è un requisito per la scrittura di driver per il sistema operativo Windows.

Ad esempio, per definire una funzione di callback CLIENT_QueryControllerBasicInformation denominata MyEvtGpioQueryControllerBasicInformation, usare il tipo di funzione GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION, come illustrato nell'esempio di codice seguente:

GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION MyEvtGpioQueryDeviceInformation;

Implementare quindi la funzione di callback come indicato di seguito:

_Use_decl_annotations_
NTSTATUS
  MyEvtGpioQueryDeviceInformation(
    PVOID Context,
    PCLIENT_CONTROLLER_BASIC_INFORMATION Information
    )
{ ... }

Il tipo di funzione GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION è definito nel file di intestazione Gpioclx.h. Per identificare in modo più accurato gli errori durante l'esecuzione degli strumenti di analisi del codice, assicurarsi di aggiungere l'annotazione Use_decl_annotations alla definizione della funzione. L'annotazione Use_decl_annotations garantisce che vengano usate le annotazioni applicate al tipo di funzione GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION nel file di intestazione. Per altre informazioni sui requisiti per le dichiarazioni di funzione, vedere Dichiarazione di funzioni tramite tipi di ruolo per i driver KMDF. Per altre informazioni su Use_decl_annotations, vedere Annotazione del comportamento della funzione.

Requisiti

Requisito Valore
Client minimo supportato Supportato a partire da Windows 8.
Piattaforma di destinazione Desktop
Intestazione gpioclx.h
IRQL Chiamato in PASSIVE_LEVEL.

Vedi anche

CLIENT_CONTROLLER_BASIC_INFORMATION

GPIO_CLIENT_REGISTRATION_PACKET

GPIO_CLX_RegisterClient