Qualcomm Camera 开发遇到的错误及解决方法

原创 2012年03月29日 18:02:04

1. Camera module probe error:    (2011.6.28)

I2C slave address:0x48 not connected.

I2C read transfer failed.

Root cause: 

I2C slave address error. The default sub camera i2c slave address for i2c read/write is 0x48, while the right address for Aptina MT9V115 is 0x3D (i.e, 0x7A >> 1).

Reference from Aptina MT9V115 specification:

 The twolines used for CCI communication are the serial data line (SDA) and the serialclock line (SCL). The CCI bus is only used for control signals. No image datais transferred through the CCI bus.

The CCIbus is designed to manage fast (400 kHz) CCI communication.

 CCI address

The CCI slave address is 0111101, i.e., themodule is addressed by 0111101X, where X = 0 when writing to the camera and X =1 when reading from it. The read and write addresses are given by Table below:

Read address


Write address



2. After chat camera sensor is probed successfully, camera application can not start up. (2011.7.4)

Root cause: 

sensor module ID was read out from sensor during probe, and saved in user space for finding related .dat file when starting camera app. The code related with reading sensor module ID is skipped for new sensor MT9V115(since I'm reusing code from MT9V114, no code exists regarding to reading sensor module). Null is passed to and saved in user space, which leads to error when camera app starting up. 


Fill sensor module ID, and pass the right module name to user space. 

 3. When start camera, exception occoured and force close.  (2011.7.5)

Root cause:

Sensor initilization sequence is not correct. MT9V114 sequence does not work for MT9V115, since 115 supports MIPI and parrallel for data output, while 114 supports only signal mode. Register settings are quite different especially regarding to MIPI and PLL clock settings.


Contact vendor VFE to get correct sequence.

4. Initial sequence is correct, but sensor register can be writen/read, only if sensor reset/soft standby is performed.

Root cause:

The hardware STANDBY pin to sensor is enabled by mistake when sensor is powered on. 

Sensor STANDBY pin is reused from previous CAM_RESET function pin, which is active low and has to keep high during normal operation. While HIGH in this pin leads to sensor HW STANDBY, then sensor can not be software reset or wake up.

Solution: Set the pin to LOW when sensor on, as below.

/* CHAT_CAM_RST_N release(GPIO25 = HIGH) */
ret = camera_gpio_access(
g_camera_ctrl->sensordata->sub_sensor_reset, GPIO_LO);

5. Sensor can be initialized for YUV, MIPI mode. But got VFE error below when receiving first frame:

<3>[ 145.969467] irq        errorIrq

<3>[ 145.969660] msm_control: done rc = 0

<3>[ 145.975270] vfe31_irq: camif errors

<3>[ 145.978810] camifStatus  = 0x1e00500

Root cause:

CSI settings not configured during sensor initilization.


Add function below after sensor reset:     mt9v115_set_csi_setting();

6. VFE error disappears, but frame data still can't be received, error below: (2011.8.15)

E [HCF] VFE irq violation.

Rootcause: mt9v115 output bayer data 648*488, but QCT camera driver requires clipping in VFE before calculating zoom. The clipping size is:

cut 6 pixels off at begin/end of each line, 3 lines off top/bottom of each frame. This way, size becomes 636*482. Width is shorter than required 640. 

This will leads to wrong value when calculating VFE_Camif_firstPixel, VFE_Camif_lastPixel, etc, which leads to wrong VFE & camif settings.


1. Reduce preview size to narrower than VGA, such as QVGA(480*320), preview works fine.

2. Let VFE clipping cut less pixels each line, such as 3 instead of 6, preview also works, but in viewfinder, there will be green lines at right or left side.

Recommend, solution 1.

7. On new VSB board, if old and new chat camera are mounted at the same time, old camera will not work.  (2011.7.28)

Root Cause: Standby pin for MT9V115 is sharing the same gpio as RESET pin of MT9M114(old chat sensor). In kernel driver, this pin is set to HIGH after sensor on, to make MT9M114 in normal operation mode. But HIGH forces MT9V115 enter HW Standby mode, then by default MIPI data/clk lines are set to LOW. This affects the MIPI bus and as a result MIPI signal is interfered and goes wrong.

Solution: Remove new chat camera from board. Notes: try not to connect both chat camera at same time.

8. MT9V115 输出VGA bayer,由于高通驱动中需要裁掉一些pixel/line(6 pixels/line,3 line/frame),以使ISP做demosaic,鉴于硬件限制,无法做到VGA preview。所以只好使sensor输出YUV。但目前YUV的问题是,config process block在什么地方,导致_msm_control中等待config status超时。(2011.8.15)

9. MT9V115 输出YUV,每次拍照后显示都会freeze在那。(2011.9.5)

Root Cause: 所用的MT9V115为SoC(System-On-A-Chip) sensor,内部自带有自己的3A,由于QCT baseband侧的ISP3A没有disable掉,导致冲突。

Solution: 关掉ISP3A。


Camera驱动开发 - 基于高通MSM8660 + Android 2.3

1. Camera module probe error:    (2011.6.28)I2C slave address:0x48 not connected.I2C read transfer f...
  • laviolette
  • laviolette
  • 2011年06月28日 10:58
  • 5398

CAMIF : camera interface 摄像头接口 简介

一  硬件         CAMIF hardware 使外部 camera sensor 能够通过一些简单的外部协议链接到用户单元。         CAMIF hardware ...
  • lbmygf
  • lbmygf
  • 2012年04月01日 13:48
  • 8953

高通msm8926 camera调试笔记

  • canjianfantasy
  • canjianfantasy
  • 2014年08月30日 14:39
  • 7940


OV8865 1、kernel部分: A、kernel_driver: 把驱动文件ov8865_qtech_f8865ac.c 放到kernel/drivers/media/platform/msm/...
  • superHubin
  • superHubin
  • 2017年06月15日 13:25
  • 704


1、dts配置 cci: qcom,cci@1b0c000 { compatible = "qcom,cci"; ... pinctrl-names = "cci_default","cci_susp...
  • xuecz1230
  • xuecz1230
  • 2015年11月17日 16:32
  • 2195

基于qualcomm平台的camera 驱动详解

前言: 一、Android camera架构 在framework中,camera主要是通过以下库来协同工作的: libandroid_runtime.so、libui.so、libca...
  • weijory
  • weijory
  • 2017年01月19日 13:47
  • 2118

Qualcomm Camera 开发遇到的错误及解决方法

1. Camera module probe error:    (2011.6.28) I2C slave address:0x48 not connected. I2C read transf...
  • qq69696698
  • qq69696698
  • 2012年03月29日 18:02
  • 4703

camera log分析

一、关于Camera 方向 跟 LCD 方向的配置问题: 物理硬件上: 因为 sensor 是矩形(长方形),分长和宽,长宽比通常是 4:3,且 sensor 扫描方向都是按长边扫描,以2M芯...
  • rain0993
  • rain0993
  • 2016年09月28日 09:11
  • 4406


自定义cell 时获取到的width 总是320: https://my.oschina.net/ioslighter/blog/390880 dyld: Library not load...
  • u013410274
  • u013410274
  • 2017年04月25日 09:46
  • 229

Qualcomm Camera 开发遇到的错误及解决方法

图像处理(9) . 版权声明:本文为博主原创文章,未经博主允许不得转载。1. Camera module probe error: (2011.6.28)I2C slave address:0x48 ...
  • cosmoslhf
  • cosmoslhf
  • 2015年12月22日 16:00
  • 1337
您举报文章:Qualcomm Camera 开发遇到的错误及解决方法