GPIO-Controller (General-Purpose E/O)
Der GPIO-Controllertreiber (General-Purpose E/O) kommuniziert mit der GPIO-Frameworkerweiterung (GpioClx) über die GpioClx-Gerätetreiberschnittstelle (DDI). Dieser DDI wird in der Gpioclx.h-Headerdatei definiert und in diesem Abschnitt beschrieben. Als Teil dieses DDI implementiert GpioClx mehrere Treiberunterstützungsmethoden, die vom GPIO-Controllertreiber aufgerufen werden. Dieser Treiber implementiert eine Reihe von Ereignisrückruffunktionen, die von GpioClx aufgerufen werden. GpioClx verwendet diese Rückrufe, um Interruptanforderungen von GPIO-Pins zu verwalten, die als Interrupteingaben konfiguriert sind, und um Daten an oder von GPIO-Pins zu übertragen, die als Dateneingaben und -ausgaben konfiguriert sind.
Konzeptionelle Informationen zum Schreiben von GPIOClx-Clienttreibern finden Sie unter Designhandbuch für GPIO-Treiber (General-Purpose E/O, GPIO)
IOCTLs
IOCTL_GPIO_CONTROLLER_SPECIFIC_FUNCTION Mit dem IOCTL_GPIO_CONTROLLER_SPECIFIC_FUNCTION E/A-Steuerungscode kann ein Client des GPIO-Controllers (General Purpose E/O) einen controllerspezifischen Gerätesteuerungsvorgang anfordern. |
IOCTL_GPIO_READ_PINS Der IOCTL_GPIO_READ_PINS E/A-Steuerungscode ermöglicht es einem Client des GPIO-Controllers (General Purpose E/O), aus einer Reihe von GPIO-Pins zu lesen, die als Eingaben konfiguriert sind. |
IOCTL_GPIO_WRITE_PINS Der IOCTL_GPIO_WRITE_PINS E/A-Steuerungscode ermöglicht es einem Client des GPIO-Controllers (All Purpose E/O), in einen Satz von GPIO-Pins zu schreiben, die als Ausgaben konfiguriert sind. |
Enumerationen
CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE Der CLIENT_CONTROLLER_QUERY_SET_REQUEST_TYPE Enumerationstyp gibt an, welche Art von Attributinformationen die GPIO-Frameworkerweiterung (GpioClx) vom GPIO-Controllertreiber anfordert. |
GPIO_CONNECT_IO_PINS_MODE Die GPIO_CONNECT_IO_PINS_MODE-Enumeration gibt an, ob ein Satz von GPIO-Pins (General Purpose E/O) als Ein- oder Ausgänge konfiguriert ist. |
Functions
GPIO_CLIENT_CLEAR_ACTIVE_INTERRUPTS Die CLIENT_ClearActiveInterrupts Ereignisrückruffunktion löscht aktive Interrupts für eine Reihe von GPIO-Pins (General Purpose E/O), die als Interrupteingaben konfiguriert sind. |
GPIO_CLIENT_CONNECT_IO_PINS Die CLIENT_ConnectIoPins Ereignisrückruffunktion öffnet eine logische Verbindung mit einer Reihe von GPIO-Pins (General Purpose E/O) und konfiguriert diese Pins für Lese- oder Schreibvorgänge von Daten. |
GPIO_CLIENT_CONTROLLER_SPECIFIC_FUNCTION Die CLIENT_ControllerSpecificFunction Ereignisrückruffunktion führt einen Vorgang aus, der für einen bestimmten GPIO-Controller (General Purpose E/O) spezifisch ist. |
GPIO_CLIENT_DISABLE_INTERRUPT Die CLIENT_DisableInterrupt Ereignisrückruffunktion deaktiviert Interrupts für einen GPIO-Pin (Universelle E/A), der als Interrupteingabe konfiguriert ist. |
GPIO_CLIENT_DISCONNECT_IO_PINS Die CLIENT_DisconnectIoPins Ereignisrückruffunktion schließt eine logische Verbindung mit einer Reihe von GPIO-Pins (General Purpose E/O), die für Lese- oder Schreibvorgänge von Daten konfiguriert sind. |
GPIO_CLIENT_ENABLE_INTERRUPT Die CLIENT_EnableInterrupt Ereignisrückruffunktion aktiviert Interrupts für einen GPIO-Pin (Universelle E/A), der als Interrupteingabe konfiguriert ist. |
GPIO_CLIENT_MASK_INTERRUPTS Die CLIENT_MaskInterrupts Ereignisrückruffunktion maskiert Unterbrechungen für eine Reihe von GPIO-Pins (General Purpose E/O), die als Interrupteingaben konfiguriert sind. |
GPIO_CLIENT_PRE_PROCESS_CONTROLLER_INTERRUPT Die CLIENT_PreProcessControllerInterrupt Ereignisrückruffunktion führt jede Vorverarbeitung eines GPIO-Interrupts (General Purpose E/O) aus, die sofort ausgeführt werden muss, wenn die AUSFÜHRUNG der ISR zu einem späteren Zeitpunkt geplant ist. |
GPIO_CLIENT_PREPARE_CONTROLLER Die CLIENT_PrepareController Ereignisrückruffunktion führt alle Vorgänge aus, die erforderlich sind, um den GPIO-Controller für den Zugriff auf den GPIO-Controller bereit zu machen. |
GPIO_CLIENT_QUERY_ACTIVE_INTERRUPTS Die CLIENT_QueryActiveInterrupts Ereignisrückruffunktion fragt den Zustand einer Gruppe von GPIO-Pins ab, die als Interrupteingaben konfiguriert sind. |
GPIO_CLIENT_QUERY_CONTROLLER_BASIC_INFORMATION Die CLIENT_QueryControllerBasicInformation Ereignisrückruffunktion ruft die Hardwareattribute des GPIO-Controllers (General Purpose E/O) ab. |
GPIO_CLIENT_QUERY_ENABLED_INTERRUPTS Die CLIENT_QueryEnabledInterrupts Ereignisrückruffunktion fragt den Zustand einer Reihe von GPIO-Pins (General Purpose E/O) ab, um zu bestimmen, welche Pins sowohl als Interrupteingaben konfiguriert als auch für Interrupts aktiviert sind. |
GPIO_CLIENT_QUERY_SET_CONTROLLER_INFORMATION Die CLIENT_QuerySetControllerInformation Ereignisrückruffunktion fragt den GPIO-Controllertreiber (General Purpose E/O) nach dem angegebenen Satz von Attributen des GPIO-Controllers ab. |
GPIO_CLIENT_READ_PINS Die CLIENT_ReadGpioPins Ereignisrückruffunktion liest eine Reihe von GPIO-Pins (General Purpose E/O), die als Dateneingaben konfiguriert sind. |
GPIO_CLIENT_READ_PINS_MASK Die CLIENT_ReadGpioPinsUsingMask Ereignisrückruffunktion liest eine Bank von GPIO-Pins (General Purpose E/O). |
GPIO_CLIENT_RECONFIGURE_INTERRUPT Die CLIENT_ReconfigureInterrupt Ereignisrückruffunktion konfiguriert einen GPIO-Pin (Universelle E/A), der als Interrupteingabe verwendet wird. |
GPIO_CLIENT_RELEASE_CONTROLLER Die CLIENT_ReleaseController Ereignisrückruffunktion führt Vorgänge aus, die erforderlich sind, wenn auf das GpIO-Controllergerät (General Purpose E/O) nicht mehr zugegriffen werden kann. |
GPIO_CLIENT_RESTORE_BANK_HARDWARE_CONTEXT Die CLIENT_RestoreBankHardwareContext Ereignisrückruffunktion stellt den Hardwarekontext einer Bank von GPIO-Pins (General Purpose E/O) wieder her. |
GPIO_CLIENT_SAVE_BANK_HARDWARE_CONTEXT Die CLIENT_SaveBankHardwareContext Ereignisrückruffunktion speichert den Hardwarekontext einer Bank mit GPIO-Pins (General Purpose E/O). |
GPIO_CLIENT_START_CONTROLLER Die CLIENT_StartController Ereignisrückruffunktion führt Vorgänge aus, die erforderlich sind, wenn das GPIO-Controllergerät (General Purpose E/O) in den D0-Energiezustand wechselt. |
GPIO_CLIENT_STOP_CONTROLLER Die CLIENT_StopController Ereignisrückruffunktion führt Vorgänge aus, die erforderlich sind, um das GPIO-Controllergerät (General Purpose E/O) auf das Beenden des D0-Energiezustands vorzubereiten. |
GPIO_CLIENT_UNMASK_INTERRUPT Die CLIENT_UnmaskInterrupt Ereignisrückruffunktion entlarvt den Interrupt an einem GPIO-Pin (Universelle E/A), der als Interrupteingabe konfiguriert ist. |
GPIO_CLIENT_WRITE_PINS Die CLIENT_WriteGpioPins Ereignisrückruffunktion schreibt in eine Reihe von GPIO-Pins (General Purpose E/O), die als Datenausgaben konfiguriert sind. |
GPIO_CLIENT_WRITE_PINS_MASK Die CLIENT_WriteGpioPinsUsingMask Ereignisrückruffunktion schreibt in eine Reihe von GPIO-Pins (General Purpose E/O), die als Datenausgaben konfiguriert sind. |
GPIO_CLX_AcquireInterruptLock Die GPIO_CLX_AcquireInterruptLock-Methode ruft eine Interruptsperre für eine Bank von Pins im GPIO-Controller (General Purpose E/O) ab. |
GPIO_CLX_ProcessAddDevicePostDeviceCreate Die GPIO_CLX_ProcessAddDevicePostDeviceCreate-Methode übergibt ein Frameworkgeräteobjekt an die GPIO-Frameworkerweiterung (GpioClx). |
GPIO_CLX_ProcessAddDevicePreDeviceCreate Die GPIO_CLX_ProcessAddDevicePreDeviceCreate-Methode lädt Initialisierungsinformationen in zwei Strukturen, die als Eingabeparameter an die WdfDeviceCreate-Methode übergeben werden. |
GPIO_CLX_RegisterClient Die GPIO_CLX_RegisterClient-Methode registriert einen GPIO-Controllertreiber (General Purpose E/O) als Client der GPIO-Frameworkerweiterung (GpioClx). |
GPIO_CLX_ReleaseInterruptLock Die GPIO_CLX_ReleaseInterruptLock-Methode gibt eine Interruptsperre für die angegebene Bank frei. |
GPIO_CLX_UnregisterClient Die GPIO_CLX_UnregisterClient-Methode entfernt die Registrierung eines GPIO-Controllertreibers (General Purpose E/O) mit der GPIO-Frameworkerweiterung (GpioClx). |
Strukturen
CLIENT_CONTROLLER_BASIC_INFORMATION Die CLIENT_CONTROLLER_BASIC_INFORMATION-Struktur enthält GPIO-Hardwareattribute (General-Purpose E/O) und Konfigurationsinformationen. |
CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT Die CLIENT_CONTROLLER_QUERY_SET_INFORMATION_INPUT-Struktur enthält eine Anforderung für die Hardwareattribute des GPIO-Controllers (General Purpose E/O). |
CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT Die CLIENT_CONTROLLER_QUERY_SET_INFORMATION_OUTPUT-Struktur enthält eine Reihe von GPIO-Controllerattributen (General Purpose E/O), die von der GPIO-Frameworkerweiterung (GpioClx) angefordert wurden. |
CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT Die CLIENT_QUERY_BANK_POWER_INFORMATION_OUTPUT-Struktur enthält Informationen zu den Energieverwaltungsfunktionen einer Bank mit GPIO-Pins (General Purpose E/O). |
CONTROLLER_ATTRIBUTE_FLAGS Die CONTROLLER_ATTRIBUTE_FLAGS-Struktur beschreibt die Hardwareattribute des GPIO-Controllergeräts (General Purpose E/O). |
GPIO_CLEAR_ACTIVE_INTERRUPTS_PARAMETERS Die GPIO_CLEAR_ACTIVE_INTERRUPTS_PARAMETERS-Struktur beschreibt eine Reihe von GPIO-Unterbrechungspins (General Purpose E/O), die gelöscht werden sollen. |
GPIO_CLIENT_CONTROLLER_SPECIFIC_FUNCTION_PARAMETERS Die GPIO_CLIENT_CONTROLLER_SPECIFIC_FUNCTION_PARAMETERS-Struktur beschreibt die Eingabe- und Ausgabepuffer für einen controllerspezifischen Vorgang. |
GPIO_CLIENT_REGISTRATION_PACKET Die GPIO_CLIENT_REGISTRATION_PACKET-Struktur enthält Registrierungsinformationen, die der GPIO-Controllertreiber (General Purpose E/O) an die GPIO-Frameworkerweiterung (GpioClx) übergibt. |
GPIO_CONNECT_IO_PINS_PARAMETERS Die GPIO_CONNECT_IO_PINS_PARAMETERS-Struktur beschreibt eine logische Verbindung mit einer Reihe von GPIO-Pins (General Purpose E/O) und gibt an, ob diese Pins als Dateneingaben oder -ausgaben konfiguriert werden sollen. |
GPIO_DISABLE_INTERRUPT_PARAMETERS Die GPIO_DISABLE_INTERRUPT_PARAMETERS-Struktur beschreibt einen zu deaktivierenden GPIO-Interruptpin (General Purpose E/O). |
GPIO_DISCONNECT_IO_PINS_PARAMETERS Die GPIO_DISCONNECT_IO_PINS_PARAMETERS-Struktur beschreibt eine Reihe von GPIO-Pins (General Purpose E/O), die getrennt werden sollen. |
GPIO_ENABLE_INTERRUPT_PARAMETERS Die GPIO_ENABLE_INTERRUPT_PARAMETERS-Struktur gibt einen GPIO-Pin (Universelle E/A) an und beschreibt die Interruptattribute dieses Pins. |
GPIO_MASK_INTERRUPT_PARAMETERS Die GPIO_MASK_INTERRUPT_PARAMETERS-Struktur beschreibt eine Reihe von GPIO-Unterbrechungspins (General Purpose E/O), die maskiert werden sollen. |
GPIO_QUERY_ACTIVE_INTERRUPTS_PARAMETERS Die GPIO_QUERY_ACTIVE_INTERRUPTS_PARAMETERS-Struktur beschreibt eine Reihe von GPIO-Unterbrechungspins (General Purpose E/O), um ihre aktivierten und aktiven Zustände abzufragen. |
GPIO_QUERY_ENABLED_INTERRUPTS_PARAMETERS Die GPIO_QUERY_ENABLED_INTERRUPTS_PARAMETERS-Struktur gibt an, welche Interrupt-Pins in einer Bank von GPIO-Pins (General Purpose E/O) aktiviert sind. |
GPIO_READ_PINS_MASK_PARAMETERS Die GPIO_READ_PINS_MASK_PARAMETERS-Struktur beschreibt einen Lesevorgang auf einer Bank von GPIO-Pins (General Purpose E/O). |
GPIO_READ_PINS_PARAMETERS Die GPIO_READ_PINS_PARAMETERS-Struktur beschreibt einen Lesevorgang für eine Gruppe von GPIO-Pins (General Purpose E/O). |
GPIO_RECONFIGURE_INTERRUPTS_PARAMETERS Die GPIO_RECONFIGURE_INTERRUPTS_PARAMETERS-Struktur beschreibt den GPIO-Interrupt-Pin (General Purpose E/O), um neu zu konfigurieren. |
GPIO_SAVE_RESTORE_BANK_HARDWARE_CONTEXT_PARAMETERS Die GPIO_SAVE_RESTORE_BANK_HARDWARE_CONTEXT_PARAMETERS-Struktur beschreibt eine Bank von GPIO-Pins (General Purpose E/O), deren Hardwarezustand gespeichert oder wiederhergestellt werden soll. |
GPIO_WRITE_PINS_MASK_PARAMETERS Die GPIO_WRITE_PINS_MASK_PARAMETERS-Struktur beschreibt einen Schreibvorgang auf einer Bank von GPIO-Pins (General Purpose E/O). |
GPIO_WRITE_PINS_PARAMETERS Die GPIO_WRITE_PINS_PARAMETERS-Struktur beschreibt einen Schreibvorgang für eine Gruppe von GPIO-Pins (General Purpose E/O). |