![](https://img-blog.csdnimg.cn/20201014180756930.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Linux驱动
文章平均质量分 97
记录Linux驱动学习过程
一只大喵咪1201
这个作者很懒,什么都没留下…
展开
-
【Linux驱动】USB协议
详细介绍了USB协议中的电气信号,以及数据传输过程中电平信号的变化。还有USB协议的数据格式,传输类型,如批量传输,实时传输,中断传输,控制传输。还讲解并演示了设备枚举的过程。原创 2024-05-02 16:07:13 · 1053 阅读 · 26 评论 -
【Linux驱动】休眠与唤醒 | POLL机制 | 异步通知 | 阻塞与非阻塞 | 软件定时器
讲解了休眠与唤醒,POLL机制,异步通知,阻塞与非阻塞的使用,大概原理和注意事项。还介绍了软件定时器在按键消抖中的使用。原创 2024-01-22 13:17:08 · 1923 阅读 · 36 评论 -
【Linux驱动】设备树中指定中断 | 驱动中获得中断 | 按键中断实验
讲解了如何在设备树中指定中断信息,包含父节点以及中断源的描述规则。还讲解了如何在驱动程序中获取不同设备节点的中断信息。最后进行了一个按键中断实验。原创 2024-01-15 11:00:00 · 1784 阅读 · 34 评论 -
【Linux驱动】Linux的中断系统 | 中断的重要数据结构
讲解了Linux的中断体系,中断可以分为上下两部分,下半部分有三种处理方式,包括软件中断,内核线程,线程化等方式。还详细介绍了Linux中管理中断的irq_desc数组这个数据结构,以及产生中断后,CPU是如何通过这个数据结构调用中断处理函数的。原创 2024-01-12 10:20:45 · 2141 阅读 · 30 评论 -
【Linux驱动】Pinctrl子系统 | GPIO子系统 | 基于子系统的LED驱动程序
介绍了Pinctrl子系统和GPIO子系统的概念以及由来,包括它们在设备树中如何使用和定义节点时的细节。还讲解了如何在驱动程序中使用GPIO子系统提供的标准函数接口,包含获取引脚资源,设置方向,写值和读值等等。原创 2024-01-08 17:04:31 · 1896 阅读 · 24 评论 -
【Linux驱动】设备树模型的LED驱动 | 查询方式的按键驱动
讲解了如何使用设备树模型实现LED驱动,包括设备树文件的修改,驱动程序的修改等等。还简要介绍了APP读取按键的四种方式,并且实现了查询方式的按键驱动程序。原创 2024-01-02 15:26:28 · 1363 阅读 · 35 评论 -
【Linux驱动】设备树简介 | 内核对设备树的处理
讲解了设备树文件引入的原因,设备树文件的基本语法,包括常见节点和属性。还讲解了内核对设备树的处理,包括device_node结构体,以及哪些节点会转换为platform_device结构体,转换后又是如何和platform_driver结构体进行匹配的。最后还简单介绍了如何使用没有被转换为paltform_device结构体的节点属性。原创 2023-12-30 17:37:12 · 2052 阅读 · 26 评论 -
【Linux驱动】驱动框架的进化 | 总线设备驱动模型
以LED驱动为例,讲解了驱动程序从最简单的框架,到含有面向对象和分层的框架,再到含有分离的框架,更进一步引出platform_device和platform_driver两类结构体以及总线设备驱动模型。原创 2023-12-26 19:47:52 · 1477 阅读 · 28 评论 -
【Linux驱动】最基本的驱动框架 | LED驱动
讲解了Linux程序的框架,包括file_operations结构体及初始化,入口函数及注册设备节点,提供设备信息,还有出口函数等等。最后用该框架实现了基于IMX6ULL单板的LED驱动程序。原创 2023-12-23 19:05:02 · 2213 阅读 · 23 评论