Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
La funzione di callback degli eventi 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 di dispositivo del driver del controller GPIO .
[out] Information
Puntatore a una struttura di 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.
Osservazioni:
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 versione e dimensioni. GpioClx non inizializza il membro size prima di chiamare questa funzione, ma il buffer a cui punta il parametro Information garantisce una dimensione sufficiente per contenere la versione di questa struttura usata dal driver del controller GPIO.
Per registrare la funzione di callback CLIENT_QueryControllerBasicInformation del driver, 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 a funzione CLIENT_QueryControllerBasicInformation.
Esempi
Per definire una funzione di callback CLIENT_QueryControllerBasicInformation, è 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 usando i tipi di funzione di callback consente di
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 in questo esempio di codice:
GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION MyEvtGpioQueryDeviceInformation;
Implementare quindi la funzione di callback come segue:
_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 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 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 i tipi di ruolo della funzione per i driver KMDF. Per altre informazioni su Use_decl_annotations, vedere l'annotazione del comportamento della funzione.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supportato a partire da Windows 8. |
Piattaforma di destinazione | Schermo |
intestazione | gpioclx.h |
IRQL | Chiamato in PASSIVE_LEVEL. |
Vedere anche
CLIENT_CONTROLLER_BASIC_INFORMATION