Compartilhar via


GpioClx DDI

O driver de controlador gpio (E/S) de uso geral se comunica com a extensão de estrutura GPIO (GpioClx) por meio da DDI (interface gpioClx device-driver). Essa DDI é definida no arquivo de cabeçalho Gpioclx.h e é descrita em Referência de Driver de E/S de Uso Geral (GPIO). Como parte dessa DDI, o GpioClx implementa vários métodos de suporte ao driver, que são chamados pelo driver do controlador GPIO. Esse driver implementa um conjunto de funções de retorno de chamada de evento, que são chamadas por GpioClx. O GpioClx usa esses retornos de chamada para gerenciar solicitações de interrupção de pinos GPIO configurados como entradas de interrupção e para transferir dados de ou para pinos GPIO configurados como entradas e saídas de dados.

Nesta seção

Tópico Descrição

Métodos de suporte ao driver na DDI gpioClx

A extensão da estrutura GPIO (GpioClx) está disponível a partir do Windows 8. Os métodos fornecidos pelo sistema na DDI gpioClx são implementados no driver gpioClx kernel-mode, Msgpioclx.sys. Esse driver exporta pontos de entrada para os métodos de suporte ao driver GpioClx. Começando com Windows 8, Msgpioclx.sys é um componente padrão do sistema operacional.

Funções de retorno de chamada gpio opcionais e necessárias

Um driver de controlador de E/S de uso geral (GPIO) chama o método GPIO_CLX_RegisterClient para se registrar como um cliente da gpioClx (extensão da estrutura GPIO). Durante essa chamada, o driver passa um pacote de registro para GpioClx que especifica uma lista de funções de retorno de chamada de evento implementadas pelo driver. O GpioClx chama essas funções de retorno de chamada para configurar o hardware do controlador GPIO, executar operações de E/S e gerenciar interrupções. GpioClx requer um driver de controlador GPIO para implementar determinadas funções de retorno de chamada, mas o suporte para outras funções de retorno de chamada é opcional.

Contextos do dispositivo GPIO

Um dispositivo controlador de E/S de uso geral (GPIO) é representado por um objeto de dispositivo de estrutura. O driver do controlador GPIO pode associar um contexto de dispositivo a esse objeto de dispositivo. O driver usa esse contexto de dispositivo para armazenar persistentemente informações sobre o estado do dispositivo controlador GPIO.

Particionando um controlador GPIO em bancos de pinos

Um desenvolvedor de driver pode, como opção, particionar um dispositivo de controlador gpio (E/S de uso geral) em dois ou mais bancos de pinos GPIO. Por exemplo, um dispositivo controlador GPIO que tem 64 pinos GPIO pode ser descrito pelo driver do controlador GPIO como dois bancos, cada um com 32 pinos GPIO.

Problemas de implementação para drivers de controlador GPIO

A extensão da estrutura GPIO (GpioClx) fornece uma DDI (interface de driver de dispositivo) flexível. Essa DDI permite que os desenvolvedores escolham entre interfaces alternativas de retorno de chamada. Um desenvolvedor de driver deve implementar o conjunto de funções de retorno de chamada de evento mais adequadas para a arquitetura de hardware do dispositivo controlador GPIO de destino.