设备驱动-14.userspace进行IP的寄存器读写
摘要:title: 字符设备驱动-用户态构造IP寄存器结构体和读写寄存器 date: 2024-08-17 14:46:12 tags: - Linux设备驱动 - 数据结构 1 用户态定义寄存器结构 以键盘keyscan为例,定义一个IP寄存器描述头文件,IOCRREG, IOCWREG定义了两个ioc
阅读全文
字符设备驱动-13.ioctl命令详解
摘要:title: 字符设备驱动-ioctl命令详解 date: 2024-08-17 14:11:24 tags: Linux设备驱动 1 引入ioctl 一个字符设备驱动通常会实现设备打开、关闭、读、写等功能,在一些需要细分的情境下,如果需要扩展新的功能增添命令,通常以增设 ioctl() 命令的方式
阅读全文
字符设备驱动-12.misc杂项字符设备驱动
摘要:title: 字符设备驱动-misc杂项设备 date: 2024-08-17 13:32:57 tags: Linux设备驱动 1 引入misc device 1.1 传统cdev方式 char_drv.c #include <linux/module.h> #include <linux/ker
阅读全文
字符设备驱动-11.mmap机制-实例分析
摘要:title: 字符设备驱动-mmap驱动应用实例 date: 2024-08-16 23:21:52 tags: Linux设备驱动 1 mmap驱动要做的事情 确定物理地址 确定属性:是否使用 cache、 buffer 建立映射关系 参考 Linux 驱动源文件代码: 我们要验证mmap功能,在
阅读全文
字符设备驱动-11.mmap机制
摘要:1 引入mmap 应用程序和驱动程序之间传递数据时,可以通过 read、write 函数进行, 用户态和内核态的数据交互一般用copy_from_user,copy_to_user。这种方式在数据量比较小时没什么问题;但是数据量比较大时效率就太低了。比如更新 LCD 显示时,如果每次都让 APP 传
阅读全文