Freigeben über


CLIENT_CONTROLLER_BASIC_INFORMATION Struktur (gpioclx.h)

Die CLIENT_CONTROLLER_BASIC_INFORMATION-Struktur enthält allgemeine I/O-Controller-Hardwareattribute und Konfigurationsinformationen.

Syntax

typedef struct _CLIENT_CONTROLLER_BASIC_INFORMATION {
  USHORT                     Version;
  USHORT                     Size;
  USHORT                     TotalPins;
  UCHAR                      NumberOfPinsPerBank;
  ULONG                      DeviceIdleTimeout;
  CONTROLLER_ATTRIBUTE_FLAGS Flags;
} CLIENT_CONTROLLER_BASIC_INFORMATION, *PCLIENT_CONTROLLER_BASIC_INFORMATION;

Angehörige

Version

Die Versionsnummer dieser Struktur. Legen Sie dieses Element auf GPIO_CONTROLLER_BASIC_INFORMATION_VERSIONfest, das in der Headerdatei "Gpioclx.h" definiert ist.

Size

Die Größe dieser Struktur in Byte. Legen Sie dieses Element auf Größe(CLIENT_CONTROLLER_BASIC_INFORMATION) fest.

TotalPins

Die Anzahl der Pins auf dem GPIO-Controller. Wenn die Pins in mehrere Banken aufgeteilt werden, gibt dieses Mitglied die Gesamtanzahl der Pins für alle Banken im GPIO-Controller an.

NumberOfPinsPerBank

Die Anzahl der GPIO-Pins für jede Bank. Die maximale Anzahl von Pins für jede Bank beträgt 64. Die Pins auf dem GPIO-Controller werden in eine oder mehrere Banken unterteilt. Jede Bank enthält die Anzahl der durch diesen Parameter angegebenen Pins, mit ausnahme der letzten Bank. Weitere Informationen finden Sie in den Hinweisen.

DeviceIdleTimeout

Das Leerlauftimeoutintervall in Millisekunden, wenn der GPIO-Controller den D3-Energiezustand unterstützt. Das Timeoutintervall ist die minimale Zeitspanne, die ein GPIO-Controller im D0-Zustand verbleibt, nachdem der Controller im Leerlauf ist. Nachdem das Timeoutintervall abgelaufen ist, fordert der Power Manager möglicherweise an, dass der Controller in den D3-Zustand wechselt.

Flags

Eine Reihe von Flags, die die Hardwareattribute des GPIO-Controllers angeben. Dieses Element kann auf alle Nullen oder auf eine beliebige bitweise ODER Kombination der folgenden Flagbits festgelegt werden:

  • MemoryMappedController-
  • ActiveInterruptsAutoClearOnRead-
  • FormatIoRequestsAsMasks
  • DeviceIdlePowerMgmtSupported
  • BankIdlePowerMgmtSupported
  • EmulateDebouncing
  • EmulateActiveBoth
Weitere Informationen finden Sie unter CONTROLLER_ATTRIBUTE_FLAGS.

Bemerkungen

Die CLIENT_QueryControllerBasicInformation Ereignisrückruffunktion verwendet eine CLIENT_CONTROLLER_BASIC_INFORMATION Struktur, um gerätespezifische Informationen zu einem GPIO-Controller an die GPIO-Frameworkerweiterung (GpioClx) zu übergeben.

Ein GPIO-Controllertreiber kann die Pins in einem GPIO-Controllergerät in eine Reihe von Banken partitionieren. Wenn N die Anzahl der Banken im Controller ist, werden die Banken 0 bis N–1 nummeriert. Alle außer der letzten Bank (d. h. Banknummer N–1) müssen die Anzahl der Pins enthalten, die im NumberOfPinsPerBank Mitglied angegeben sind. Die letzte Bank kann eine beliebige Anzahl von Pins von 1 bis NumberOfPinsPerBankhaben.

GpioClx bestimmt die Gesamtanzahl der Banken im GPIO-Controller aus den Werten der TotalPins und NumberOfPinsPerBank Mitglieder. GpioClx verwendet die folgende ganzzahlige Formel, um die Gesamtzahl der Banken zu berechnen:

TotalPinsNumberOfPinsPerBank NumberOfPinsPerBank In der Regel kann eine Bank in einem GPIO-Controllergerät unabhängig von den anderen Banken auf demselben Gerät ein- und ausgeschaltet werden. So kann Energie gespart werden, indem eine Bank deaktiviert wird, die im Leerlauf ist.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Wird ab Windows 8 unterstützt.
Header- gpioclx.h

Siehe auch

CLIENT_QueryControllerBasicInformation

CONTROLLER_ATTRIBUTE_FLAGS