Linux设备驱动开发
文章平均质量分 59
松鼠松鼠松鼠
这个作者很懒,什么都没留下…
展开
-
Linux字符设备驱动组成-加载,卸载day01
最近在学习linux设备驱动相关的知识.参考书是<Linux设备驱动开发详解-基于最新的Linux4.0内核>为了能够系统的学习,把书上的一些知识点总结一下,方便以后复习查证.Linux字符设备驱动的组成1.字符设备驱动模块| 加载函数|设备号申请,cdev注册 ||–卸载函数|设备号释放,cdev注销–|...原创 2018-10-30 16:35:46 · 483 阅读 · 0 评论 -
Linux字符设备驱动-cdev结构体day00
cdev结构体:描述一个字符设备定义:struct{struct kobject kobj; /*内嵌的kobject对象*/struct module *owner; /*所属模块*/struct file_operations *ops; /*文件操作结构体*/struct list_head list;dev_t dev; /*设备号*/unsign...原创 2018-10-30 09:29:32 · 185 阅读 · 0 评论 -
Linux设备驱动-模块
【1】模块文件在文件系统中可以被直接插入到内核的文件模块和应用程序的区别模块 应用程序入口函数 加载函数 main库 内核库 /lib /usr/lib资源释放 必须释放 可以释放段错误 系...原创 2018-10-29 11:44:08 · 130 阅读 · 0 评论 -
Linux设备驱动开发-file_operations结构体day02
day02file_operations结构体其成员函数是字符设备驱动与内核虚拟文件系统的接口,是用户空间对Linux进行系统调用最终的落实者,把系统调用和驱动程序关联起来.注意: __usr是一个宏,其后的指针指向用户空间.(1)读设备/*读设备*/ssize_t xxx_read(struct file *filp,char __user *buf,size_t count,lof...原创 2018-10-31 11:11:50 · 235 阅读 · 0 评论 -
Linux设备驱动-platform虚拟总线dya01
转载:https://www.cnblogs.com/deng-tao/p/6026373.html摘要: platform的原理及相关结构体1、什么是platform(平台)总线?相对于USB、PCI、I2C、SPI等物理总线来说,platform总线是一种虚拟、抽象出来的总线,实际中并不存在这样的总线。那为什么需要platform总线呢?其实是Linux设备驱动模型为了保持设备驱动的...原创 2018-10-31 15:42:24 · 234 阅读 · 0 评论 -
platform_get_resource
https://blog.csdn.net/cupidove/article/details/9447225最近在看linux设备驱动的书,发现代码中有一个叫platform_get_resource的结构体,不是很懂,看到网上有人对他做了解析,转载来与大家分享,也供我日后复习.platform_get_resource函数源码如下:struct resource *platform_get...转载 2018-11-07 15:35:01 · 13161 阅读 · 2 评论 -
Linux设备驱动-platform虚拟总线dya02
参考书:<linux设备驱动开发详解>宋宝华上一篇介绍了platform的基本构成与源码,本篇用实例来说明platform的实现.参考书中介绍了一个名为globalfifo的驱动,以他为例,来说明作为platfrom设备如何实现.将globalfifo驱动挂接到platform总线上,要完成两部分工作:(1)将globalfifo移植为platform驱动(2)在板文件中添加...翻译 2018-11-08 14:24:51 · 191 阅读 · 0 评论