2016年10月7日
摘要: 阻塞是指执行设备操作时,不能获得 资源,则挂起进程直到满足可操作的条件在进行操作。 非阻塞是在进程不能进行设备操作时,并不挂起,要么放弃、要么不停的查询,直到进行操作为止。 等待队列; typedef struct _wait_queue_head wait_queue_head_t; 1.定义等待 阅读全文
posted @ 2016-10-07 19:14 碧海蓝天88888888 阅读(131) 评论(0) 推荐(0) 编辑
  2016年9月30日
摘要: cdev 结构体的dev_t 定义了设备号为32 位,其中12位为主设备号,20 位为次设备号。 MAJOR(dev_t dev); MINOR(dev_t dev);通过 MKDEV(int major,int minor)生成dev_t. cdev_init()用于初始化cdev,并建立cdev 阅读全文
posted @ 2016-09-30 18:28 碧海蓝天88888888 阅读(113) 评论(0) 推荐(0) 编辑
摘要: device_driver和device必须依附总线。总线、驱动、设备最终会落实为sysfs中的一个目录。kobject对应sysfs的一个目录。 attribute直接落实sysfs中的一个文件,如果attribute非常多,show/sore函数里的分支会很凌乱。解决这个问题,提供kobj——a 阅读全文
posted @ 2016-09-30 17:38 碧海蓝天88888888 阅读(241) 评论(0) 推荐(0) 编辑
摘要: 1.串口:rs-232、rs-422、rs485都是串行数据接口的标准。 2.i2c总线:两线式串行总线。 两个信号:数据线-SDA,时钟线-SCL,SDA是双向的,输出用于发送数据,输入用于接收数据。scl也是双向的,主机通过SCL发送时钟,并检测SCL上的电平决定什么时候发下一个时钟脉冲。 当S 阅读全文
posted @ 2016-09-30 12:34 碧海蓝天88888888 阅读(414) 评论(0) 推荐(0) 编辑
  2016年5月3日
摘要: Linux 的文件操作系统调用(在Windows 编程领域,习惯称操作系统提供的接口为API)涉及创建、打开、读写和关闭文件。 1.创建 int creat(const char *filename,mode_t mode); mode指定新建文件的存取权限,umask代表文件在创建时需要去掉的一些 阅读全文
posted @ 2016-05-03 17:55 碧海蓝天88888888 阅读(136) 评论(0) 推荐(0) 编辑
摘要: lcm的分析首先是mtkfb.c 1.mtk_init中platform_driver_register(&mtkfb_driver)注册平台驱动 panelmaster_init(); DBG_init(); mtkfb_ipo_init(); 2.mtkfb_probe进行普配 3.然后执行pr 阅读全文
posted @ 2016-05-03 10:02 碧海蓝天88888888 阅读(896) 评论(0) 推荐(0) 编辑
  2016年4月29日
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2016-04-29 11:42 碧海蓝天88888888 阅读(11) 评论(0) 推荐(0) 编辑
  2016年4月28日
摘要: 1.作为devfs的代替者,传统的devfs不能动态分配major和minor且有限,udev能像DHCP动态的分配IP一样去分配major和minor 2.device naming提供命名持久化机制。 3.API提供一组易用的API去操作呢sysfs. 用户空间的程序与设备通信的方法: 1.通过 阅读全文
posted @ 2016-04-28 16:52 碧海蓝天88888888 阅读(95) 评论(0) 推荐(0) 编辑
摘要: 1.系统调用是操作系统提供给用户程序调用的一组“特殊”接口。可被看成是一个内核与用户空间程序交互的接口 系统调用在系统中的主要用途无非以下几类: 1.1 控制硬件--系统调用往往作为硬件资源和用户空间的抽象接口,比如读写文件时用到的write/read调用。 1.2设置系统状态或读取内核数据——因为 阅读全文
posted @ 2016-04-28 16:13 碧海蓝天88888888 阅读(219) 评论(0) 推荐(0) 编辑
摘要: 1.设备文件系统(devfs) 1.1在设备初始化时在/dev目录下创建设备文件,卸载时把它删除 1.2设备驱动程序可以指定设备名,所有者和权限,用户空间中可以修改 1.3不需要分配主设备号以及次设备号,直接可以给register_chrdev()传递0主设备号可以动态获取可用的主设备号,并在dev 阅读全文
posted @ 2016-04-28 15:02 碧海蓝天88888888 阅读(144) 评论(0) 推荐(0) 编辑