Other Parts Discussed in Thread: TVP5158, AM5728
Hi,
TI,there is a tvp5158 on the vin4a port of my am5728 board,and I use the kernel from origin/processor-sdk-linux-03.01.00 branch.I got a tvp5158 driver from p-ti-lsk-linux-4.4.y-next branch.The dts file configuration like that:
Now the problem is that I can not capture the video.When I run the test software,it will show me that:
[ 513.941189] vip2-s1: vip_open
[ 513.941650] tvp5158 3-005f: NTSC video detected
[ 513.946205] vip2-s1: vip_init_port: g_mbus_fmt subdev mbus_code: 2006 fourcc:NV12 size: 720x240
[ 513.946219] vip2-s1: calc_format_size: fourcc:NV12 size: 720x240 bpl:720 img_size:259200
[ 513.946228] vip2-s1: init_stream fourcc:NV12 size: 720x240 bpl:720 img_size:259200
[ 513.946235] vip2-s1: init_stream vpdma data type: 0x02
[ 513.946244] vip2-s1: vip_init_stream: stream instance 0x00000001ed34e800
[ 513.946272] vip2-s1: cropped (0,0)/720x240 of 720x240
[ 513.946283] drivers/media/platform/ti-vpe/vip.c vip_s_fmt_vid_cap
[ 513.958866] vip2-s1: s_fmt input fourcc:VYUY size: 720x480
[ 513.958877] s_fmt input fourcc:VYUY size: 720x480
[ 513.963621] vip2-s1: try_fmt fourcc:VYUY size: 720x480
[ 513.963630] vip2-s1: try_fmt loop:0 fourcc:VYUY size: 720x480
[ 513.963638] vip2-s1: try_fmt loop:0 found new larger: 720x480
[ 513.963645] vip2-s1: try_fmt loop:0 found at least larger: 720x480
[ 513.963651] vip2-s1: try_fmt loop:0 found new best: 720x480
[ 513.963658] vip2-s1: try_fmt loop:0 found direct match: 720x480
[ 513.963666] vip2-s1: calc_format_size: fourcc:VYUY size: 720x480 bpl:1440 img_size:691200
[ 513.963673] vip2-s1: s_fmt try_fmt fourcc:VYUY size: 720x480
[ 513.963681] vip2-s1: s_fmt fourcc:VYUY size: 720x480 bpl:1440 img_size:691200
[ 513.963688] vip2-s1: s_fmt pix_to_mbus mbus_code: 2006 size: 720x480
[ 513.964136] tvp5158 3-005f: NTSC video detected
[ 513.968688] vip2-s1: s_fmt subdev fmt mbus_code: 2006 size: 720x240
[ 513.968695] vip2-s1: s_fmt vpdma data type: 0x37
[ 513.968701] v4l_s_fmt line = 1459 ret = 0
[ 513.973115] vip2-s1: get 4 buffer(s) of size 691200 each.
[ 513.976056] vip2-s1: vip_set_slice_path:
[ 513.976069] vip2-s1: vip_set_slice_path: DATA_PATH_SELECT(00000110): 00008000
[ 513.976355] vip2-s1: start_streaming: buf 0xee156e00 4
[ 513.976594] vip2-s1: start_streaming: start_dma buf 0xee156e00
[ 513.976604] vip2-s1: start_dma: buf:0xee156e00, vb:0xee156e00, dma_addr:0xbe600000
[ 513.976623] vip2-s1: IRQ 373 VIP_INT1_STATUS0 0x1
[ 513.976631] vip2-s1: IRQ 1: handling LIST0_COMPLETE
[ 513.976637] vip2-s1: added next buffer
[ 513.976645] vip2-s1: start_dma: buf:0xee157c00, vb:0xee157c00, dma_addr:0xbe700000
[ 513.976661] vip2-s1: IRQ 373 VIP_INT1_STATUS0 0x1
[ 513.976668] vip2-s1: IRQ 1: handling LIST0_COMPLETE
[ 513.976674] vip2-s1: added next buffer
[ 513.976682] vip2-s1: start_dma: buf:0xef21bc00, vb:0xef21bc00, dma_addr:0xbe800000
It seems like the driver only go into the vip_irq function (locate in drivers\media\platform\ti-vpe\vip.c) twice.What is the problem?
If it got the video, I think it will go into the vip_irq function again and again.But it not!
What happens will the interrupt occur?
BR,
vefone

