Camera Driver analysis in the platform of MTK 
Preliminary Information 
 
MTK 平台 CAMERA 驱动浅析 
Camera Driver analysis in the platform of MTK 
 
 
 
 
 
Document Number: 
 
Preliminary (Released) Information 
 
Revision:0.1 
 
Release Date: 
 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
- 1 - 
Camera Driver analysis in the platform of MTK 
Preliminary Information 
Revision History 
 
Revision  Date (dd/mm/yyyy) 
Author 
Comments 
0.1 
14/02/2012 
Guoqing Zhang 
Draft Version 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
- 2 - 
Camera Driver analysis in the platform of MTK 
Preliminary Information 
Contents 
一、  手机 CAMERA 的物理结构: ........................................................................................ - 4 - 
二、  CAMERA 的成像原理: ................................................................................................. - 4 - 
三、  CAMERA 常见的数据输出格式:.................................................................................. - 5 - 
四、  阅读 CAMERA 的规格书(以 TRULY 模组 OV5647_RAW 为例): ........................... - 6 - 
五、  CAMERA 的硬件原理图及引脚 ..................................................................................... - 7 - 
1、  电源部分:.................................................................................................................... - 7 - 
SENSOR INPUT 部分: ................................................................................................... - 7 - 
2、 
SENSOR OUTPUT 部分: ............................................................................................... - 7 - 
3、 
4、 
I2C 部分:SCL,I2C 时钟信号线和 SDA,I2C 数据信号线。 .................................. - 7 - 
六、  MTK 平台 CAMERA 驱动架构: .................................................................................. - 8 - 
七、  MTK 平台 CAMERA 相关代码文件(以下代码均为 MTK6575 平台): .................... - 9 - 
1、  CAMERASENSOR 驱动相关文件 .................................................................................... - 9 - 
SENSOR ID  和一些枚举类型的定义 ............................................................................. - 9 - 
2、 
3、 
SENSOR 供电 .................................................................................................................. - 9 - 
4、  KERNEL SPACE 的 SENSORLIST,IMGSENSOR 模块注册 ............................................... - 9 - 
5、  USER SPACE 的 SENSORLIST,向用户空间提供支持的 SENSORLIST ......................... - 10 - 
6、 
SENSOR  效果调整的接口 ............................................................................................ - 10 - 
八、  CAMERA 模块驱动、设备与总线结构: ..................................................................... - 11 - 
A)  驱动的注册: .................................................................................................................. - 11 - 
B)  设备的注册: .................................................................................................................. - 11 - 
C)  总线的匹配: .................................................................................................................. - 12 - 
九、  CAMERA 驱动工作流程: ............................................................................................- 13 - 
十、  CAMERA 驱动添加、调试流程:.................................................................................- 17 - 
 
 
 
 
 
 
 
 
 
 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
- 3 - 
Camera Driver analysis in the platform of MTK 
Preliminary Information 
一、 手机 Camera 的物理结构: 
 
 
 
 
FPC: Flexible Printed Circuit  可挠性印刷电路板 
Sensor:图象传感器 
IR:红外滤波片 
Holder:基座 
Lens:镜头 
二、 Camera 的成像原理: 
  景物通过镜头(LENS)生成的光学图像投射到图像传感器(Sensor)表面上,然后转为模
拟的电信号,经过 A/D(模数转换)转换后变为数字图像信号,再送到数字信号处理芯片
(DSP)中加工处理,再通过 IO 接口传输到 CPU 中处理,通过 LCD 就可以看到图像了。 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
- 4 - 
 
 
 
Camera Driver analysis in the platform of MTK 
Preliminary Information 
图像传感器(SENSOR)是一种半导体芯片,其表面包含有几十万到几百万的光电二极
管。光电二极管受到光照射时,就会产生电荷。目前的 SENSOR 类型有两种: 
CCD(Charge Couple Device),    电荷耦合器件,它是目前高像素类 sensor 中比较成熟
的成像器件,是以一行为单位的电流信号。 
CMOS(Complementary  Metal  Oxide  Semiconductor),互补金属氧化物半导体。CMOS
的信号是以点为单位的电荷信号,更为敏感,速度也更快,更为省电。 
 
ISP 的性能是决定影像流畅的关键,JPEG  encoder 的性能也是关键指标之一。而 JPEG 
encoder 又分为硬件 JPEG 压缩方式,和软件 RGB 压缩方式。 
 
DSP 控制芯片的作用是:将感光芯片获取的数据及时快速地传到 baseband 中并刷新感
光芯片,因此控制芯片的好坏,直接决定画面品质(比如色彩饱和度、清晰度)与流畅度。 
三、 Camera 常见的数据输出格式: 
  常见的数据输出格式有:Rawdata 格式、YUV 格式、RGB 格式。 
 
RGB 格式:采用这种编码方法,每种颜色都可用三个变量来表示红色、绿色以及蓝色
的强度。每一个像素有三原色 R 红色、G 绿色、B 蓝色组成。 
 
YUV 格式:其中“Y”表示明亮度(Luminance 或 Luma),就是灰阶值;而“U”和“V”表示色度 
(Chrominance 或 Chroma),是描述影像色彩及饱和度,用于指定像素的颜色。 
 
RAW  DATA 格式:是 CCD 或 CMOS 在将光信号转换为电信号时的电平高低的原始记
录,单纯地将没有进行任何处理的图像数据,即摄像元件直接得到的电信号进行数字化处理
而得到的。   
  支持 YUV/RGB 格式的模组,一般会在模组上集成 ISP(Image Single Processor),经过
A/D 转换过的原始数据经过 ISP 处理生成 YUV 标准格式传到 BB。一般来说,这种设计适
用于低像素 Camera 的要求,会在主板上省去一个 DSP,可降低成本。在调试过程中,
YUV/RGB 格式的摄像头,其所有参数都可在 kernel 层通过寄存器来控制。调试一般由 sensor
的原厂支持。 
  支持 RawData 格式的模组,由于感光区域的需求,不会再模组内集成 ISP 以最大程度
的增大感光区域的面积,提高照片质量。模组把原始的数字信号传给 BB 上的 DSP 进行处
理,MTK 自带的 DSP 一般包含 ISP、JPEG encoder、和 DSP 控制芯片。在调试的时候图像
的效果需要 MTK 在 HAL 层的参数进行支持。 
 
 
 
 
 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
- 5 - 
Camera Driver analysis in the platform of MTK 
Preliminary Information 
四、 阅读 Camera 的规格书(以 Truly 模组 OV5647_Raw 为例): 
 
 
 
 
 
 
 
 
 
 
 
                                           
 
 
 
 
 
 
 
 
 
 
 
 
 
 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
 
- 6 - 
Camera Driver analysis in the platform of MTK 
Preliminary Information 
五、 Camera 的硬件原理图及引脚 
(以 W19S 项目 MainCameraOV5647 为例): 
 
从上面可看出,连接 Camera 的 30 根 Pin 脚可大致分为以下几类: 
1、 电源部分: 
a)  VCAMD 就是 DVDD 数字供电,主要给 ISP 供电,由于 RAWDATA 格式
的 sensor 其 ISP 是在 BB 端,所以将其引脚将其 NC。从上面的规格书上
可以看出 DVDD 是内部 BB 端供电。模组已将其 NC 掉了;   
b)  VCAM_IO 就是 VDDIO 数字 IO 电源主要给 I2C  部分供电; 
c)  VCAMA 就是 AVDD 模拟供电,主要给感光区和 ADC 部分供电; 
d)  VCAM_AF 是对 Camera 自动对焦马达的供电。 
2、 Sensor Input 部分: 
a)  Reset 信号,用于复位、初始化。 
b)  Standby/PowerDown 信号,用于进入待机模式,降低功耗。 
c)  Mclk,即 MasterClock 信号,是由 BB 端提供。 
3、 Sensor OutPut 部分: 
a)  Pclk,即 PixelClock 信号,由 MCLK 分频得到,作为外部时钟控制图像
传输帧率 
b)  HSYNC,行同步信号,其上升沿表示新一列行图像数据的开始。   
c)  VSYNC,帧同步信号,其下降沿表示新的一帧图片的开始。 
d)  D0-D9 一共 10 根数据线(8/10 根等); 
4、 I2C 部分:SCL,I2C 时钟信号线和 SDA,I2C 数据信号线。 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
- 7 - 
Camera Driver analysis in the platform of MTK 
Preliminary Information 
六、 MTK 平台 Camera 驱动架构: 
   上图的架构相信大家都有了一定的了解,android 将系统大致分为应用层、库文件和硬
件抽象层、Linux 内核三层。在底层的内核空间,Camera 的 driver 将其驱动起来以后,将硬
件驱动的接口交给硬件抽象层,android 上层的 Camera 应用程序在 android 实时系统中的虚
拟机中,加载 android 留给 Camera 公用的一些库文件,调用硬件抽象层的接口来控制 Camera
硬件来实现功能。当然,如果是 Raw 模式的 Camera,还需要在硬件抽象层调用一些参数来
控制 Camera 的效果。 
 
 
 
 
 
 
 
 
 
Ghong Confidential              Revision 0.1-Feb.14 2012 
 
Ⓒ2012 Ghong inc. 
- 8 -