嵌入式linux设备驱动
嵌入式linux设备驱动
有崖
这个作者很懒,什么都没留下…
展开
-
使用mmap在用户层访问底层硬件
使用mmap在用户层访问底层硬件,基本原理是通过mmap将底层一块内存映射到用户,在LCD驱动里面应用比较多。先看MakefileTARGET = mmap_tool_simpleROOTDIR = /home/flinn/bin/rootfsCROSS_COMPILE := /home/flinn/tools/4.9.4/bin/arm-linux-gnueabi-CC ...原创 2020-03-10 20:39:17 · 431 阅读 · 0 评论 -
linux设备驱动(1)字符设备框架及操作
字符设备框架条件: 单板通过nfs挂载文件系统 框架包含几个方面(1)入口(module_init)(2)出口 (module_exit)(3)操作(open/close read/write ...) 主要实现file_operations里面定义的部分函数,这里先实现open/write代码如下:#include <linux/m...原创 2018-11-02 09:35:42 · 275 阅读 · 0 评论 -
linux设备驱动(2)使用udev自动创建设备节点
前面使用mknod来手动创建设备节点,显然这种方法效率低下, 这里使用udev机制来自动创建设备节点。首先定义static struct class *second_drv_cls;static struct class_device *second_drv_cls_dev;对应的头文件#include <linux/device.h> /* class_d...原创 2018-11-02 10:56:46 · 1339 阅读 · 0 评论 -
linux设备驱动(0)测试工具(比较通用)
下面使用getopt_long实现的基于命令行的驱动测试软件,比较通用,拓展性强使用如下:No device found Usage: driver_test_tool [Device] [cmd] [data] ...Options: -o --open open the device of offset, -c --close ...原创 2018-11-02 14:19:36 · 1070 阅读 · 0 评论 -
linux设备驱动(3)字符驱动 -led
本文基于mini2440/** kernel : linux-2.6.22.6* gcc : arm-linux-gcc -3.4.5*/#include <linux/module.h>#include <linux/kernel.h>#include <linux/fs.h>#include <linux/init.h...原创 2018-11-02 14:23:55 · 245 阅读 · 0 评论