Linux内核驱动
文章平均质量分 77
辣眼睛的Developer
失败就是因为半途而废
展开
-
DMA驱动框架流程编写
本文主要是针对Xilinx DMA驱动流程框架编写DMA驱动一致性和流式的基本认识一致性DMA与流式DMA主要是内存的申请方式和访问控制权限不一样一致性DMA内存申请:void *dma_alloc_coherent(struct device *dev, size_t size, dma_addr_t *handle, gfp_t gfp);流式DMA内存申请:d原创 2015-04-18 17:09:43 · 13728 阅读 · 3 评论 -
linux中断学习
linux中断机制原创 2018-10-17 18:02:05 · 200 阅读 · 0 评论 -
I2C设备驱动Input设备注册流程实例
在一般的外设中i2c接口是比较常用的,android驱动设备中,重力感应,光感,ctp等等外设通常都是注册为input设备进行操作的,现在就来 举例注册一个input设备的流程注册成一个I2C设备驱动include include include include原创 2018-09-25 17:41:21 · 611 阅读 · 0 评论 -
论linux内核工作队列
说到工作队列,相信接触linux内核驱动的同学肯定看到过,但是为什么要引入工作队列呢?工作队列什么时候引入的? 它的作用是什么?我们应该怎么使用它等等问题,一定困惑了不少刚接触驱动的新人,当然也困惑了我很长一段时间 今天就我个人的学习经历以及查找网上资源进行一个小结,本文仅代表个人愚见,如果不足之处还请指正和交流沟通原创 2017-04-22 15:28:55 · 537 阅读 · 0 评论 -
个人纪录I2C重要知识
I2C传输速率一般是100k,200k,400k,3.2Mbps 其时钟速率与可编程的时钟输出决定I2C接口采用Open Drain机制, 器件本身不能输出高电平,只能输出低电平,需要外置上拉电阻(1k-10k) 外设数量限制:等效电<400pfI2C起始信号与停止信号 SCL保持高电平 SDA从高拉低表示起始 SDA 从低位拉高表示停止位, 总线总是在收到起始位之后处于忙状态,直到停原创 2017-02-27 16:49:09 · 1589 阅读 · 0 评论 -
I2C驱动
一:I2C 概述I2C是philips提出的外设总线.I2C只有两条线,一条串行数据线:SDA,一条是时钟线SCL ,使用SCL,SDA这两根信号线就实现了设备之间的数据交互,它方便了工程师的布线。因此,I2C总线被非常广泛地应用在EEPROM,实时钟,小型LCD等设备与CPU的接口中。二:在linux下的驱动思路谈到在linux系统下编写I2C驱动,目转载 2015-04-26 11:38:57 · 756 阅读 · 0 评论 -
内核向应用层异步通知的方法,kill_fasync及fasync_helper用法
kill_fasync及fasync_helper用于异步通知中kill_fasync(&fasync_read, SIGIO, POLL_IN);; //向用户发可读信号,fasync_read可用来区分向谁发哪个进程调用这个fasync_helper就向谁发int fasync_helper(int fd, struct file * filp, int on, struct fa原创 2015-05-09 10:57:57 · 4442 阅读 · 0 评论 -
Linux平台总线驱动设备模型
platform总线是一种虚拟的总线,相应的设备则为platform_device,而驱动则为platform_driver。Linux 2.6的设备驱动模型中,把I2C、RTC、LCD等都归纳为platform_device。总线将设备和驱动绑定,在系统每注册一个设备的时候,会寻找与之匹配的驱动;相反的,在系统每注册一个驱动的时候,会寻找与之匹配的设备,而匹配由总线完成。Linu转载 2015-04-26 11:51:49 · 598 阅读 · 0 评论 -
字符设备驱动编写流程以及大概框架
本文主要是针对Linux的字符设备驱动,Linux设备驱动中字符设备驱动的注册类型与注册方式字符设备是Linux驱动中最简单的驱动,也是最常的驱动!字符设备驱动除了注册为字符设备类还可以注册为混杂设备类字符设备可以动态注册也可以静态注册原创 2015-04-18 14:40:02 · 5015 阅读 · 0 评论 -
详细介绍I2C子系统驱动框架与协议
I2C子系统分析1.基本工作原理:以启动信号START来掌管总线,以停止信号STOP来释放总线;每次通讯以START开始,以STOP结束;启动信号START后紧接着发送一个地址字节,其中7位为被控器件的地址码,一位为读/写控制位R/W,R. /W位为0表示由主控向被控器件写数据,R/W为1表示由主控向被控器件读数据;当被控器件检测到收到的地址与自己的地址相同时,在第9个时钟期间反馈应答信...原创 2019-06-10 16:33:55 · 784 阅读 · 0 评论