查看: 6422|回复: 0
收起左侧

MTK 摄像头调试分析

[复制链接]
发表于 2017-3-8 09:52:50 | 显示全部楼层 |阅读模式
[FAQ08102][Camera Drv]Mt6572黑屏,绿屏,花屏,卡等问题分析思路
+ e9 I( S2 k% y( q0 U6 C" f, d( i7 B% i& E" Y4 p: e( ?
[DESCRIPTION]
) _/ w+ X# H/ E  [; B如果在进入camera的时候,发现有读到ID,可是确黑屏或者绿屏,或者出现一条绿线等,请先将ISP寄存器dump出来做。
- `- _: K" x. q% O1 ^( q9 L- u8 g3 f0 t
第一手分析' G! ?8 G) L" W1 R
[SOLUTION]* Q- ?# Q$ I, V7 C  i

2 R$ P3 M  b) W1 X; C# _& R一,ISP寄存器dump出来的方法:
8 h+ j' |# b6 e, Y. ]3 G   1,直接在进入camera之后通过adb dump,命令“adb shell cat /proc/driver/isp_reg > 'your path' ”7 s! x+ _5 L& |; z* ^# f2 r1 \
   2,手机有debug机制,遇到数据抓不满的时候会自动dump,在kernel log中搜索“K_ISP +”下面就是dump出来的寄存器。
7 S8 M# v8 |  J$ C: h' P
) b% h0 ^! Q0 Q5 D二,分析Tg那边的寄存器来排查是sensor的数据有问题还是后端处理有问题:% l' v# t: O# f  T, ~6 P
   1,看TG Grab Window的配置:# m/ S6 ?* U, P; u& B0 ^
           K_ISP0xF4013418  0x06310001  GRAB PIXEL Start/End$ |" S/ w; C" g
                                                                            X1 q5 B* g3 h5 f/ T
        6 [) P5 R& ~& h* V
           K_ISP0xF401341C 0x02530001  GRAB LineStart/End
& Y1 U5 h. j) `    2,看Tg的input以及output
- ?, I1 Z( d, E8 a/ t        K_ISP0xF4013440  0x000e5b60  TGOutPutDataNum=Widthx2×Height(此
" M/ S4 r1 e: y( V1 Y6 {- F处的Width和Height为Grabwindow的配置,对应到driver中的Get Resolution里面的
0 [0 m/ G8 e: {9 N% ?值)                                  8 O& ?% X2 @1 p. x* c7 _! d3 |
         K_ISP0xF4013448 0x06440259  [30:16]Input frame line counter  + n- Z4 k# U$ W  _# x1 E" W9 H
[15:0]Input frame pixel counter ' H) A  p# M/ j* m0 i
6 H& ]" N+ A' n$ B& _/ v
注意:由于yuv1个pixel是由2个byte组成的,所以宽会等于抓到的byte/2;高是从
" Y, o* E. ?2 W6 L, P1开始算的,所以会+19 y7 ]) r- L3 O8 H3 B+ y
如果Grab window配置不对,请检查sensor driver中Getinfo函数中的startx,starty以及GetResolution函数中的/ l  H( @; h. E# }1 M  X0 }
Width和Height。
" r- q" a. ?( o2 [Tg In为sensor实际吐出来的数据,如果不对,需要检查sensor的setting,有可能是sensor吐出来的数据量不够或者配
. ?6 ?6 }. ?( v( e. n, X5 I- D置错误导致抓不到data;Tg OutPut为实际往后面输出的size,它应该等于GetResolution中的Width×Height×2,注意Tg的GrabWindow不能比TG的Input还要大,否则会抓不满报错。

7 A  f% r6 t3 _* Q( X  m6 q+ z$ z3 o! V+ m+ [5 M
我的设备打印出来的 K_ISP0xF4013440 为 0 也就是TGOutPutDataNum等于0 。有可能是什么原因造成的呢? sensor driver中Getinfo函数中的startx,starty应该怎么设置?

, w; b! i- z) Z: z9 }
高级模式
B Color Image Link Quote Code Smilies @朋友 |上传

本版积分规则

在线客服

客服电话

欢迎来电咨询

188-9985 8350

微信关注

手机APP程序:
扫码下载访问

微信公众平台:
摄像头之家公众号

微信小程序:
摄像头小程序

返回顶部

QQ|站点统计|小黑屋|手机版|Archiver|摄像头模组论坛网 ( 粤ICP备18155214号 )

Powered by Discuz! X3.4 Licensed© 2001-2013 Comsenz Inc.