camera驱动电源配置_camera驱动框架分析(上)【转】

本文深入探讨了SOC相机驱动的电源配置,分析了与SOC直接连接的相机驱动框架,涉及字符设备驱动、设备模型、平台设备驱动、V4L2框架和I2C驱动等内容。文章通过环境说明、术语解释和内核版本,阐述了相机主机、传感器和SOC相机设备之间的关系,并展示了驱动结构和设备节点的创建过程。

前言

camera驱动框架涉及到的知识点比较多,特别是camera本身的接口就有很多,有些是直接连接到soc的camif口上的,有些是通过usb接口导出的,如usb camera。我这里主要讨论前者,也就是与soc直连的。我认为凡是涉及到usb的,都不是一两句话可以说明白的!如有错误,欢迎指正,谢谢!!!

环境说明

涉及到的基础知识点:

字符设备驱动

设备模型

平台设备驱动

v4l2框架

i2c驱动框架

涉及到的术语:

camera : 指的是整个camera,包括它本身的硬件连接方式及支持i2c控制的i2c设备

sensor : 指的是支持i2c控制的i2c设备,它属于camera的一部分,在内核实现里也能体现出来

camera host: 指的是与camera相连接的,一般内嵌在soc里面的控制器

涉及到的文件夹:

drivers/media/platform/soc_camera/ 主要存放camera host驱动,通用的camera驱动也存放在此

drivers/media/i2c/soc_camera/ 主要存放sensor驱动

分析所采用的内核版本:

VERSION = 3

PATCHLEVEL = 15

SUBLEVEL = 0

EXTRAVERSION =

NAME = Shuffling Zombie Juror

camera的驱动包括通用camera的驱动、camera host的驱动以及sensor的驱动,下面一个个来分析

这里先插一张图,来自:http://blog.csdn.net/kickxxx/article/details/8484498(该图片及图片后的文字是在我写完这篇博文后发现的,我认为对理解camera驱动会有帮助,所以就摘抄了^_^)

Soc camera sub-system对应着drivers/media/video/下的soc_camera.c soc_camera_platform.c

Soc camera host 是host端实现,是由平台厂商实现的,向上实现soc_camera_host_ops接口,向下操作Camera host硬件以及通过平台特定的接口操作Soc camera device

Soc camera device 是平台的camera device(同时也是subdev),由驱动开发者来实现v4l2_subdev_call调用的subdev 接口,同时还要为soc camera host实现平台特定的操作接口;向下操作camera sensor或者video AD芯片。

Camera host hardware是平台硬件相关的,不同的平台有不同的host硬件,比如imx51的ipu,三星s5pv210的fimc控制器等。

soc_camera_host,soc_camera_device,v4l2_device,v4l2_subdev关系如下:

理论上系统内可以有多个soc_camera_host,物理上soc_camera_host就是系统的camera处理模块驱动

一个soc_camera_host可以对应多个soc_camera_device,物理上soc_camera_device是一个camera接口,每个soc_camera_host对应一个v4l2_dev

每个soc_camera_device,系统会为他们创建设备节点/dev/videoX。

每个soc_camera_device有多个v4l2_subdev,物理上v4l2_subdev可以是sensor,video AD芯片

v4l2_subdev可以通过i2c挂接到v4l2_device,也可以通过soc_camera_link提供的add_device来增加,这依赖于sensor和video

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值