Compartir a través de


estructura CLIENT_CONTROLLER_BASIC_INFORMATION (gpioclx.h)

La estructura de CLIENT_CONTROLLER_BASIC_INFORMATION contiene atributos de hardware de controlador de E/S de uso general (GPIO) e información de configuración.

Sintaxis

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;

Miembros

Version

Número de versión de esta estructura. Establezca este miembro en GPIO_CONTROLLER_BASIC_INFORMATION_VERSION, que se define en el archivo de encabezado Gpioclx.h.

Size

Tamaño, en bytes, de esta estructura. Establezca este miembro en sizeof(CLIENT_CONTROLLER_BASIC_INFORMATION).

TotalPins

Número de patillas en el controlador GPIO. Si las patillas se dividen en varios bancos, este miembro especifica el recuento total de patillas en todos los bancos del controlador GPIO.

NumberOfPinsPerBank

Número de patillas GPIO para cada banco. El número máximo de patillas para cada banco es 64. Las patillas del controlador GPIO se dividen en uno o varios bancos. Cada banco contiene el número de patillas especificadas por este parámetro, con la posible excepción del último banco. Para obtener más información, vea la sección Comentarios.

DeviceIdleTimeout

Intervalo de tiempo de espera de inactividad, en milisegundos, si el controlador GPIO admite el estado de alimentación D3. El intervalo de tiempo de espera es la cantidad mínima de tiempo que un controlador GPIO permanece en el estado D0 después de que el controlador se vuelva inactivo. Una vez expirado el intervalo de tiempo de espera, el administrador de energía podría solicitar que el controlador cambie al estado D3.

Flags

Conjunto de marcas que especifican los atributos de hardware del controlador GPIO. Este miembro se puede establecer en todos los ceros o en cualquier combinación or bit a bit de los siguientes bits de marca:

  • MemoryMappedController
  • ActiveInterruptsAutoClearOnRead
  • FormatIoRequestsAsMasks
  • DeviceIdlePowerMgmtSupported
  • BankIdlePowerMgmtSupported
  • EmulateDebouncing
  • EmularActiveBoth
Para obtener más información, consulte CONTROLLER_ATTRIBUTE_FLAGS.

Comentarios

La función de devolución de llamada de evento CLIENT_QueryControllerBasicInformation usa una estructura de CLIENT_CONTROLLER_BASIC_INFORMATION para pasar información específica del dispositivo sobre un controlador GPIO a la extensión del marco GPIO (GpioClx).

Un controlador de controlador GPIO puede particionar las patillas de un dispositivo de controlador GPIO en algún número de bancos. Si N es el número de bancos del controlador, los bancos se numeran de 0 a N-1. Todos excepto el último banco (es decir, el número de banco N-1) deben contener el número de patillas especificadas en el miembro NumberOfPinsPerBank . El último banco puede tener cualquier número de patillas de uno a NumberOfPinsPerBank.

GpioClx determina el número total de bancos en el controlador GPIO a partir de los valores de los miembros TotalPins y NumberOfPinsPerBank . GpioClx usa la siguiente fórmula de enteros para calcular el número total de bancos:

TotalPinsNumberOfPinsPerBank NumberOfPinsPerBank Normalmente, un banco en un dispositivo de controlador GPIO se puede activar y desactivar independientemente de los demás bancos del mismo dispositivo. Por lo tanto, la energía se puede ahorrar desactivando un banco que está inactivo.

Requisitos

Requisito Value
Cliente mínimo compatible Se admite a partir de Windows 8.
Encabezado gpioclx.h

Consulte también

CLIENT_QueryControllerBasicInformation

CONTROLLER_ATTRIBUTE_FLAGS