Qualcomm Technologies, Inc. 
多媒体驱动程序开发和调通指南 – 摄像头 
80-NU323-2SC 版本 H 
2017 年 1 月 31 日 
 
机密和专有信息—Qualcomm Technologies, Inc. 
禁止公开披露:如若发现本文档在公共服务器或网站上发布,请报告至:DocCtrlAgent@qualcomm.com。 
限制分发:未经 Qualcomm 配置管理部门的明确批准,不得向 Qualcomm Technologies, Inc. 或其关联公司的员工之外的任何人分发。 
未经  Qualcomm  Technologies,  Inc.  的明确书面许可,不得使用、复印、复制或修改其全部或部分内容,或以任何方式向其他人泄露其
内容。 
Qualcomm  是  Qualcomm  Incorporated  在美国及其他国家/地区所注册的商标。其他产品和品牌名称可能是其各自所有者的商标或注
册商标。 
本技术资料可能受美国和国际出口、再出口或转让(统称“出口”)法律的约束。严禁违反美国和国际法律。 
Qualcomm Technologies, Inc. 
5775 Morehouse Drive 
San Diego, CA 92121 
U.S.A. 
© 2014-2017 Qualcomm Technologies, Inc. 版权所有。 
 
修订记录 
版本 
A 
B 
C 
D 
E 
F 
G 
H 
 
日期 
2014 年 11 月 
2015 年 1 月 
2015 年 2 月 
2015 年 4 月 
2015 年 12 月 
2016 年 5 月 
2016 年 11 月 
2017 年 1 月 
说明 
初始版本 
针对 MSM8992 芯片组进行了更新 
更新了第 7 章 
针对 MSM8952 和 MSM8996 芯片组进行了更新 
更新了第 3.3.2.7.1 节  
更新了以下内容: 
  第 3.1 节  
  第 7 章标题中包含了 MSM8998 
更新了第 3.3.2.4 节和第 3.3.2.7.1 节 
新增了第 3.3.2.7.2 节 
更新了第 3.3.2.7.1 节 
更新了第 3.3.2.4 节中的表 
更新了第 9.2.1 节 
更新了以下内容,以包括 SDM660/SDM630: 
  第 3.1 节中的注释 
  第 7 章 
80-NU323-2SC 版本 H 
机密和专有信息 – Qualcomm Technologies, Inc. 
2 
可能包含美国和国际出口管制信息 
 
目录 
1 简介 ................................................................................................................... 6 
1.1 用途 .............................................................................................................................. 6 
1.2 约定 .............................................................................................................................. 6 
1.3 技术协助 ...................................................................................................................... 7 
2 预调通指南 ........................................................................................................ 8 
2.1 摄像头传感器选择和开发时间指南 ........................................................................... 8 
2.2 访问 PVL 驱动程序 ..................................................................................................... 8 
2.3 有用资源 ...................................................................................................................... 8 
3 传感器驱动程序调通 .......................................................................................... 9 
3.1 YUV 和 Bayer 传感器的参考驱动程序 ..................................................................... 9 
3.2 添加新驱动程序所需修改的文件 ............................................................................. 10 
3.3 源代码解释 ................................................................................................................ 11 
3.3.1 内核驱动程序 ................................................................................................. 11 
3.3.2 用户空间驱动程序 ......................................................................................... 14 
3.3.3 使用 QUP/SPI ................................................................................................. 27 
3.3.4 更新 CCI 运行速度 ......................................................................................... 27 
4 AF 致动器驱动程序 .......................................................................................... 29 
4.1 AF 致动器驱动程序目录结构 .................................................................................. 29 
4.2 需要更新/添加的文件 ............................................................................................... 30 
4.2.1 更新设备树文件 ............................................................................................. 30 
4.2.2 设置 AF 致动器电源 ...................................................................................... 30 
4.2.3 为致动器添加可选的 GPIO 控制管脚 .......................................................... 31 
4.2.4 更新传感器驱动程序文件 ............................................................................. 32 
4.2.5 添加 AF 致动器文件 ...................................................................................... 32 
4.2.6 添加 AF 算法调试文件 .................................................................................. 33 
80-NU323-2SC 版本 H 
机密和专有信息 – Qualcomm Technologies, Inc. 
3 
可能包含美国和国际出口管制信息 
多媒体驱动程序开发和调通指南 – 摄像头 
目录 
5 LED 闪光灯驱动程序 ....................................................................................... 37 
5.1 LED 闪光灯驱动程序目录结构 ................................................................................ 37 
5.2 需要修改的文件 ........................................................................................................ 37 
5.2.1 更新设备树文件 ............................................................................................. 38 
5.2.2 针对基于 CCI 的情形更改 GPIO 管脚编号 ................................................. 41 
5.2.3 添加 LED 闪光灯驱动程序文件 .................................................................... 43 
5.2.4 添加基于 PWM 的闪光灯驱动程序 .............................................................. 46 
6 EEPROM 驱动程序 .......................................................................................... 47 
6.1 EEPROM 驱动程序目录结构 ................................................................................... 47 
6.2 需要修改的文件 ........................................................................................................ 47 
6.2.1 更新设备树文件 ............................................................................................. 47 
6.2.2 更新传感器驱动程序文件 ............................................................................. 49 
6.2.3 添加 EEPROM 驱动程序文件 ....................................................................... 49 
7 MSM8952/MSM8992/MSM8994/MSM8996/MSM8998/ 
SDM660/SDM630 更新 ................................................................................... 52 
7.1 传感器驱动程序更改 ................................................................................................ 52 
7.1.1 用户空间更改 ................................................................................................. 52 
7.2 LED 闪光灯驱动程序更改 ........................................................................................ 53 
7.2.1 基于 PMIC....................................................................................................... 53 
7.2.2 基于 I2C/GPIO ................................................................................................ 54 
8 针对 MSM8909 的更新 .................................................................................... 55 
8.1 无 CCI 硬件 ................................................................................................................ 55 
8.2 参考驱动程序 ............................................................................................................ 56 
9 故障排除 .......................................................................................................... 57 
9.1 传感器故障排除 ........................................................................................................ 57 
9.1.1 模块安装 ......................................................................................................... 57 
9.1.2 模块探测 ......................................................................................................... 58 
9.2 ISP 故障排除 .............................................................................................................. 61 
9.2.1 SOF IRQ 超时 ................................................................................................. 61 
9.2.2 VFE 溢出 ......................................................................................................... 62 
9.2.3 CAMIF 错误状态 ............................................................................................ 63 
9.3 CSID 故障排除 .......................................................................................................... 64 
9.4 DPHY 故障排除 ......................................................................................................... 65 
A 参考资料 ......................................................................................................... 67 
A.1 相关文档 .................................................................................................................... 67 
A.2 缩略词和术语 ............................................................................................................ 67 
 
 
80-NU323-2SC 版本 H 
机密和专有信息 – Qualcomm Technologies, Inc. 
4 
可能包含美国和国际出口管制信息 
多媒体驱动程序开发和调通指南 – 摄像头 
目录 
图 
图 9-1  SOF IRQ 超时 ................................................................................................................................ 62 
图 9-2  VFE 溢出 ........................................................................................................................................ 62 
 
 
80-NU323-2SC 版本 H 
机密和专有信息 – Qualcomm Technologies, Inc. 
5 
可能包含美国和国际出口管制信息 
 
1  简介 
1.1  用途 
本文档为摄像头传感器和相关模块提供驱动程序开发指南,介绍如何在 MSM8x26/ 
MSM8x28、MSM8926/MSM8928、MSM8974、APQ8084、MSM8992、MSM8994、
MSM8996、MSM8909、MSM8916、MSM8952、MSM8936/MSM8939、MSM8998、
SDM660 和 SDM630 Android 平台上调通摄像头。 
其他多媒体技术的驱动程序开发指南以及调通步骤,将在以下各个文档中分别进行介绍: 
  Multimedia Driver Development and Bringup Guide – Audio (80-NU323-1) 
  Multimedia Driver Development and Bringup Guide – Display (80-NU323-3) 
  Multimedia Driver Development and Bringup Guide – Video (80-NU323-5) 
摄像头传感器框架包括以下各个组件的配置: 
  传感器 
  CSIPHY 
  CSID 
  摄像头控制接口 (CCI) 
  致动器 
  闪光灯 
  EEPROM 
  Chromatix™ 
本文档虽然是基于 MSM8916 代码库编写而成,但文档中的很多信息同样适用于所有 
MSM8x26/MSM8x28、MSM8926/MSM8928、MSM8974、APQ8084、MSM8992、MSM8994、
MSM8996、MSM8909、MSM8916、MSM8952 和 MSM8936/MSM8939 芯片组的 Linux 摄
像头代码。芯片组之间特定的差异在各个章节中介绍。 
1.2  约定 
函数声明、函数名称、类型声明、属性以及代码示例以不同字体表示,例如 #include。 
代码变量括在尖括号内,例如 。 
要输入的命令以不同字体显示,例如 copy a:*.* b:。 
按钮和按键名称以粗体显示,例如,点击 Save 或按 Enter 键。 
80-NU323-2SC 版本 H 
机密和专有信息 – Qualcomm Technologies, Inc. 
6 
可能包含美国和国际出口管制信息 
多媒体驱动程序开发和调通指南 – 摄像头 
简介 
带阴影的部分表示本版本文档中新增的或已进行更改的内容。 
1.3  技术协助 
针对本文档中的信息,如需协助或说明,可通过 https://createpoint.qti.qualcomm.com/  
向 Qualcomm Technologies, Inc. (QTI) 提交用例。  
如果您无法访问 CDMATech 支持网站,可在注册后进行访问,或者发送电子邮件至 
support.cdmatech@qti.qualcomm.com。 
 
 
80-NU323-2SC 版本 H 
机密和专有信息 – Qualcomm Technologies, Inc. 
7 
可能包含美国和国际出口管制信息 
 
2  预调通指南 
本章介绍如何搜索现有 PVL 驱动程序以及了解非 PVL 组件选择对整个摄像头日程的影响。
建议本文档读者在进行摄像头调通前先查阅此信息。 
2.1  摄像头传感器选择和开发时间指南 
要了解摄像头选择和基于该选择的开发时间/资源投入指南,可查看解决方案 [00028471]。 
2.2  访问 PVL 驱动程序 
有关如何访问 PVL(推荐供应商列表)驱动程序的指南,可参见 Qualcomm CreatePoint 
Hardware Component Quick Start Guide(英文版)(80-NC193-10) 或 Qualcomm CreatePoint 
Hardware Component Quick Start Guide(中文版)(80-NC193-10SC)。通过这些指南可以查
询特定芯片组的 PVL 摄像头驱动程序列表,还可以下载一个或多个驱动程序。  
2.3  有用资源 
查阅列于解决方案 [00028470] 的“传感器调通”部分下的重要文档,然后再开始传感器的
调通工作。如果调通过程中遇到问题,QTI 客户工程部可通过 Salesforce 用例提供帮助。
有关正确识别问题领域的指南,可参见解决方案 [00028523]。 
 
80-NU323-2SC 版本 H 
机密和专有信息 – Qualcomm Technologies, Inc. 
8 
可能包含美国和国际出口管制信息