GpioClx DDI
Драйвер контроллера GPIO взаимодействует с расширением платформы GPIO (GpioClx) через интерфейс драйвера устройства (DDI) GpioClx. Этот DDI определен в файле заголовка Gpioclx.h и описан в справочнике по драйверу GPIO. В рамках этого DDI GpioClx реализует несколько методов поддержки драйверов, которые вызываются драйвером контроллера GPIO. Этот драйвер реализует набор функций обратного вызова событий, которые вызываются GpioClx. GpioClx использует эти обратные вызовы для управления запросами прерываний от контактов GPIO, настроенных как входные данные прерывания, и для передачи данных в контакты GPIO, настроенные в качестве входных и выходных данных.
В этом разделе
Раздел | Описание |
---|---|
Расширение платформы GPIO (GpioClx) доступно начиная с Windows 8. Системные методы в DDI GpioClx реализованы в драйвере режима ядра GpioClx, Msgpioclx.sys. Этот драйвер экспортирует точки входа для методов поддержки драйвера GpioClx. Начиная с Windows 8, Msgpioclx.sys является стандартным компонентом операционной системы. |
|
Драйвер контроллера GPIO вызывает метод GPIO_CLX_RegisterClient для регистрации в качестве клиента расширения платформы GPIO (GpioClx). Во время этого вызова драйвер передает пакет регистрации в GpioClx, указывающий список функций обратного вызова событий, реализованных драйвером. GpioClx вызывает эти функции обратного вызова для настройки оборудования контроллера GPIO, выполнения операций ввода-вывода и управления прерываниями. Для реализации определенных функций обратного вызова GpioClx требуется драйвер контроллера GPIO, но поддержка других функций обратного вызова является необязательной. |
|
Устройство контроллера ввода-вывода общего назначения (GPIO) представлено объектом устройства платформы. Драйвер контроллера GPIO может связать контекст устройства с этим объектом устройства. Драйвер использует этот контекст устройства для постоянного хранения сведений о состоянии устройства контроллера GPIO. |
|
Разработчик драйвера может, как вариант, разделить устройство контроллера ввода-вывода общего назначения (GPIO) на два или более банков контактов GPIO. Например, устройство контроллера GPIO с 64 контактами GPIO может быть описано драйвером контроллера GPIO как два банка, каждый из которых имеет 32 контакта GPIO. |
|
Расширение платформы GPIO (GpioClx) предоставляет гибкий интерфейс драйвера устройства (DDI). Этот DDI позволяет разработчикам выбирать альтернативные интерфейсы обратного вызова. Разработчик драйвера должен реализовать набор функций обратного вызова событий, которые лучше всего подходят для аппаратной архитектуры целевого устройства контроллера GPIO. |