I'm using a OMAP35x and I'm trying to configure it to accept BT.656 video input and I'm not having any success yet.
My system must switch between two video input sources connected via a LVDS serializer/deserializer. The first is a MT9V024 image sensor sending out Bayer along with HSYNC and VSYNC. The second is an NTSC BT.656 video stream.
The MT9V024 works fine. I'm running Linux and have debugging turned on in the ISP module and I can see the ISP queuing buffers and processing them file. I also have a test application sending the data to an LCD and the image is correct.
My problem occurs when I try to switch to the BT.656 input. As soon as I set the R656ON bit in the CCDC_REC656IF register, the kernel module stops processing buffers. I'm still getting interrupts, but my kernel processing stops.
Does using the BT656 decoder require that VDHDOUT be set to 1 to change the cam_hs and cam_vs to outputs?
Here's a dump of the ISP and CCDC registers when I think I'm set for BT656 and not seeing any video:
1| 0/I
2| 000000 --- ISP ---
3| 000004 config status
4| 000004 00002001 00000001
5| 00000c irq0en irq0stat irq1en irq1stat
6| 00000c 81180300 82000000 00000000 83100300
7| 000040 ctrl
8| 000040 003bf110
9|
10| 0/C
11| 000000 --- CCDC ---
12| 000600 pid pcr syn_mode hd_vd_wid
13| 000600 0001fe01 00000003 00012001 00000000
14| 000610 pixlines horzinfo vert_st vert_ln
15| 000610 02d000f0 000004ff 00000000 000002cf
16| 000620 culling hsizeoff sdofst sdraddr
17| 000620 ffff00ff 00000a00 00000000 00000000
18| 000630 clamp dcsub colptn blkcmp
19| 000630 00000010 00000010 bb11bb11 00000000
20| 000640 fpc fpcaddr vdint alaw
21| 000640 00000000 00000000 01c60032 00000004
22| 000650 rec656if cfg fmtcfg fmthorz
23| 000650 00000001 00008000 0000e000 000002d0
24| 000660 fmtvert fmtaddr0 fmtaddr1 fmtaddr2
25| 000660 000001e0 00000000 00000000 00000000
Any suggestions as to what I may be doing wrong would be welcome!
thanks,
Jeff Cooper