DRV_02_编写input_dev驱动框架

Posted 韦东山

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了DRV_02_编写input_dev驱动框架相关的知识,希望对你有一定的参考价值。

资料下载

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

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

视频观看

百问网驱动大全

编写input_dev驱动框架

参考资料:

  • Linux 5.x内核文档

  • Documentation\\input\\input-programming.rst

    • Documentation\\input\\event-codes.rst
  • Linux 4.x内核文档

    • Documentation\\input\\input-programming.txt
    • Documentation\\input\\event-codes.txt
  • 本节视频代码:GIT仓库中

    IMX6ULL\\source\\05_Input\\02_input_dev_framework
    STM32MP157\\source\\A7\\05_Input\\02_input_dev_framework
    

1. 回顾框架

2. 怎么编写input_dev驱动

2.1 分配/设置/注册input_dev

2.2 硬件相关的操作

  • 申请中断

  • 在中断服务程序里

    • 读取硬件获得数据

    • 上报数据

      void input_event(struct input_dev *dev,
      		 unsigned int type, unsigned int code, int value);
      		 
      static inline void input_sync(struct input_dev *dev); // 实质也是 input_event
      

3. 现场编程

  • 在设备树里创建一个节点
    • 指定硬件资源等信息
  • 编译一个plartform_driver驱动
    • 在probe函数里
      • 从设备树获得资源
      • 分配/设置/注册input_dev
      • 硬件相关的操作
        be函数里
      • 从设备树获得资源
      • 分配/设置/注册input_dev
      • 硬件相关的操作
        • request_irq等

以上是关于DRV_02_编写input_dev驱动框架的主要内容,如果未能解决你的问题,请参考以下文章

DRV_03_编写最简单的触摸屏驱动程序_基于QEMU

编程\_LCD驱动程序框架\_使用设备树

DRV_01_Input子系统框架详解

020_linux驱动之_输入子系统按键应用

DRV_05_GPIO按键驱动分析与使用

第1个linux驱动___给驱动模块上户口