linux driver
chenmeng4735
静下心来,品味艺术
展开
-
OMAP3630 I2C device驱动
在Linux内核中,I2C device驱动位于drivers/i2c/chips目录下,可以看到该目录下有很多相关的device驱动,这里以xxxx项目的mma7455为例介绍device驱动的注册过程,对应的device驱动程序为mma7455.c。 既然有device驱动,那么必定有相应的device,I2C的device是什么呢?其实就是我们在1.3节中提到的i2c_client,转载 2011-11-21 11:42:26 · 789 阅读 · 0 评论 -
X-LOAD从nand flash启动
X-LOAD从nand flash启动1.前沿 刚拿到TI公司免费的开发板,发现它默认从SD卡启动,而我们产品没有SD卡,只能从NAND启动,还没有拿到产品,就用开发板来做,为以后做准备了。2.准备 a,安装交叉编译环境: Sourcery G++ For ARM GUN/LINUX Spring 2009 安装包如下:原创 2011-11-08 14:19:56 · 1311 阅读 · 0 评论 -
基于UDEV动态设备加载
在linux2.4和linux2.6早期版本中,在驱动开发中,多使用mknod命令手动创建设备节点,但当动态申请设备号时必须通过命令查出设备号,再添加。或者使用DEVFS文件系统函数添加设备节点。DEVFS在现在linux内核中已取消,取而代之的是UDEV,UDEV是处于用户态的程序。它根据内核发出的EVENTS,动态创建事件。内核是通过device_create发出event,我得linux版本原创 2012-01-20 10:17:53 · 1045 阅读 · 0 评论 -
gpio_direction_output vs gpio_set_value之间的使用关系
在linux驱动中常常会碰到gpio_set_value(port_num,0/1)或gpio_direction_output (port_num,0/1) 这两者有什么关系呢gpio_set_value(port_num,0/1) 一般只是在这个GPIO口的寄存器上写上某个值,至于这个端口是否设置为输出,它就管不了!而gpio_direction_output (port_num,0/1),在转载 2012-01-20 11:42:57 · 3029 阅读 · 0 评论 -
LINUX USB 摄像头驱动
在Windows下,摄像头驱动由厂商开发并提供。但在Linux下,因商业利益有限,只有极少厂商愿意提供摄像头驱动支持。这并不妨碍Linux下摄像头的使用——广大第三方志愿者维护着大大小小的驱动。之前做过一个嵌入式皮毛项目,虽然摄像头驱动不关我的事,在好奇心驱使下简要探索了一番。结果是有些胸闷,它们像蜘蛛丝一样杂乱。写本文的动机是想理清一下主线,给后来者提供一点有限的参考,但无法保证下面的文字完全正转载 2012-01-30 09:21:59 · 1494 阅读 · 0 评论 -
usb CAM 调试
摄像头为罗技USB2.0高速。驱动使用UVC,选择V4L2。 加载设备,会动态创建/dev/vedio0设备。运行测试程序,probe成功。open失败。 open video device failure: Device or resource busy 130.895874] hub 1-0:1.0: Cannot enable port 1. Maybe the USB原创 2012-07-05 10:52:07 · 1478 阅读 · 0 评论 -
《RTC驱动总结》
《RTC驱动总结》一、driver RTC使用内核I2C子系统、RTC子系统、SYSFS接口技术。1. i2c子系统a.本设备采用16寄存器地址,在构造消息时地址为word;struct i2c_msg { __u16 addr; /* slave address */ __u16 flags;原创 2013-04-11 17:43:25 · 720 阅读 · 0 评论