
设备驱动
下午两点半
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
字符设备驱动 (五)设备类概念
设备类概念 class 是设备类,它是一个抽象的概念,没有对应的实体。提供给用户接口相似的一类设备 的集合 使用命令查看当前系统中使用的设备类$ ls /sys/class #/sys/class路径下的目录表示系统当前存在的设备类 生成字符类设备节点 函数class_create创建class类文件struct class // 在 include/linux/device.h...原创 2020-05-07 11:15:54 · 447 阅读 · 0 评论 -
字符设备驱动 (四)内核定时器
Linux定时器实现 使用场景: 延后执行某个动作 定期查询硬件状态 … 内核相关时间概念 HZ 通过 CONFIG_HZ 来设置,范围为 100 ~ 1000 HZ 决定了系统时钟中断发生的频率, HZ 值不能设置太大或太小 jiffies 记录内核自启动以来的节拍数 全局变量 jiffies 用来记录子系统启动以来产生的节拍总数。启动时内核将该变量 初始化为0, 此后每次时钟...原创 2020-05-07 11:14:09 · 201 阅读 · 0 评论 -
字符设备驱动 (三)内核中断
Linux 驱动中断剖析 注册中断相关函数 // 注册中断 #include <linux/interrupt.h> static inline int __must_check request_irq(unsigned int irq, irq_handler_t handler, unsigned long flags, const char *name, void *dev) ...原创 2020-05-07 11:11:07 · 232 阅读 · 0 评论 -
字符设备驱动 (二)向内核添加驱动模块代码
将驱动代码添加到内核中 make menuconfig 的本质 遍历, 解析并且显示所有目录下的 kconfig 文件 make menuconfig 中的内容来源于各个 Kconfig 文件中的item实例 配置 make menuconfig 就是配置 Kconfig 文件各个 item 的值 .config 文件 - 实时汇总 make menuconfig 中做的所有配置 make实质...原创 2020-05-07 11:05:15 · 334 阅读 · 0 评论 -
字符设备驱动 (一)字符设备的概念与注册
字符设备 内核中通过类型 dev_t 来描述设备号, 其实质是 unsigned int 32位整形数 其中高12位为主设备号,低20位为次设备号 同一类型的不同设备拥有相同的主设备号和不同的次设备号 设备的注册 #define MINORBITS 20 #define MINORMASK ((1U << MINORBITS) - 1) // 查看主设备号 #defi...原创 2020-05-07 10:03:38 · 530 阅读 · 0 评论