- 博客(5)
- 收藏
- 关注
原创 vidioc_querycap浅析
源码欣赏在前几篇博文中我们知道: 用户层调用ioctl(),经过v4l2_ioctl —->video_ioctl2——>__video_do_ioctl()。 __video_do_ioctl这个函数会根据cmd的不同来调用struct v4l2_ioctl_ops结构中定义的不同函数。我们现在来讨论cmd为VIDIOC_QUERYCAP命令的过程。static
2015-11-29 21:01:18 6881
原创 v4l2_open()浅析
/** 应用程序调用open(/dev/videox)的时候,这个函数最终会被调用 */ static int v4l2_open(struct inode * inode,struct file * file) { struct video_device * vdev; int ret = 0; /** 获取锁-----访问临界区-----释放锁
2015-11-23 15:28:45 4003
原创 video_register_device()浅析
/** 注册一个video_device 如果注册失败,video_device中的release()函数不会被调用。 调用者负责释放所有的数据,通常是调用video_device_release()函数来释放 uvc_driver.c static int uvc_register_video() { struct video_dev
2015-11-20 16:10:22 3378
原创 fbmem_init 浅析
1 : 框架结构2 : 源码浅析/** 这个函数做了三件事情 1 : 在/proc下创建了文件 2 : 注册了一个字符设备 3 : 在/sys/class下创建了类 */ static int __init fbmem_init(void) { //在/proc目录下创建一个虚拟文件,用户空间可以通过这个文件查看驱动的一些信息
2015-11-15 19:43:56 1369
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人