07_编写一个虚拟GPIO控制器的驱动程序

Posted 韦东山

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了07_编写一个虚拟GPIO控制器的驱动程序相关的知识,希望对你有一定的参考价值。

资料下载

coding无法使用浏览器打开,必须用git工具下载:

git clone https://e.coding.net/weidongshan/linux/doc_and_source_for_drivers.git

视频观看

百问网驱动大全

编写一个虚拟GPIO控制器的驱动程序

参考资料:

  • Linux 5.x内核文档

    • Linux-5.4\\Documentation\\driver-api
    • Linux-5.4\\Documentation\\devicetree\\bindings\\gpio\\gpio.txt
    • Linux-5.4\\drivers\\gpio\\gpio-74x164.c
  • Linux 4.x内核文档

    • Linux-4.9.88\\Documentation\\gpio
    • Linux-4.9.88\\Documentation\\devicetree\\bindings\\gpio\\gpio.txt
    • Linux-4.9.88\\drivers\\gpio\\gpio-74x164.c
  • 本章课程源码位于GIT仓库里(未调试)

    doc_and_source_for_drivers\\IMX6ULL\\source\\07_GPIO\\02_virtual_gpio
    doc_and_source_for_drivers\\STM32MP157\\source\\A7\\07_GPIO\\02_virtual_gpio
    

1. 硬件功能

假设这个虚拟的GPIO Controller有4个引脚:

2. 编写设备树文件

gpio_virt: virtual_gpiocontroller {
	compatible = "100ask,virtual_gpio";
    gpio-controller;
    #gpio-cells = <2>;
    ngpios = <4>;
};

3. 编写驱动程序

现场编写。

核心:分配/设置/注册一个gpio_chip结构体。

编写驱动程序

现场编写。

核心:分配/设置/注册一个gpio_chip结构体。

以上是关于07_编写一个虚拟GPIO控制器的驱动程序的主要内容,如果未能解决你的问题,请参考以下文章

链式中断控制器驱动程序编写_linear方式

android jni控制gpio (rk3288)

接口驱动程序开发

07_编写虚拟的Pinctrl驱动程序

linux中按键控制gpio灯的驱动程序怎么写。(自定义函数,gpio引脚)

编写用DSP的GPIO口实现控制交通灯程序