1. 外设适配-TI954 记录
1.1 问题描述
项目需要支持1080P@60fps摄像头输入,针对于这种分辨率的摄像头一般都采用FPD link方式传输,这里采用TI 953、954作为摄像头输入的媒介,整体path如下:
Camera(IMX290) -> ISP(5700) -> TI953 -> TI954 -> SOC
项目反馈的状态是:可以在TI954测量到标准mipi波形输出,但是SOC无图像显示;
1.2 检查思路
基本参照上图逐步check,这个过程中还是遇到了一些非预期的问题,导致排查过程不是那么的顺利
1.3 实验分析
1.3.1 SOC内部状态确认
-
检查log
[ 29.624154]<0>I[videoin][drv_if] [info]data_path_start(line:545)device_type(14)) is started successfully.
[ 29.624158]<0>I[videoin][drv_if] [info]mipi_kthread(line:876)enter
[ 29.624164]<0>I[videoin][drv_if] [info]mipi_kthread(line:880)mipi_kthread before wait
[ 29.627268]<0>I[videoin][v4l2_if] [info]videoin_start_streaming(line:668)leave, device_type(14), buffer num(1) state(3)
[ 29.629010]<0>I[videoin][v4l2_if] [info]videoin_set_fd_buffer_ext(line:1221)buf_fd is 67, buf_idx is 0, stream_id is 0
[ 29.630513]<2>I[zh_ti954_mipi1_yuv] [info]zh_ti954_mipi1_vendor_ch_signal_plug_detect(line:663)value=0xdf,signal_status = 1 0x6d:0x7f
[ 29.631434]<2>I[videoin][v4l2_if] [info]videoin_set_fd_buffer_ext(line:1240)device_type(14), out_width(1280), out_height(720), data_fmt(3), plane(3), y(0xfe800000), cb(0xfeb84000), cr(0xfec65000)
[ 29.631440]<2>Ivss_vis [info]vis_buffer_queue(line:1967)dp(1) ch_id(4) queue count(0)!这里vss控制器一直没有取到buffer数据,需要确认mipi是否有拿到数据抑或是解析异常
-
查看中断状态
则说明确实是mipi控制器没有给出来数据,则进一步确认mipi控制器中具体是没有接收到数据还是接收到数据后解析异常 -
dump寄存器
这里dump出来为控制寄存器,与demo平台完全一致,所以这里其实没有看出什么内容,但是这里也没有进一步确认的方法;
则这里其实留下了一个坑:
- 无法确认当前SOC内部是否有接收到数据还是数据解析错误;
- 后续check其他部分时,如果实验有遗漏或者异常