We are developing TVIN V4L2 Slave driver for TW8836 (Video codec Chip from I).
This VCODEC chip can output BT656 standard YCbCr (8bit) NTSC/PAL video standard.
In my schematic,
TW8836(VCODEC) ===connected===>IMx6q's CSI0 (CSI0_DAT12 : CSI0_DAT19).
It also has HSYNC & VSYNC Lines for video synchronization.
I have followed, ADV7180 as a example driver and initialized TW8836 with vendor recommended values using I2C.
I used following IOCTL callback to configure TW8836
static int ioctl_dev_init(struct v4l2_int_device *s)
tw8836_data.on = true;
ret = tw8836_chip_init(); // <--- Configure TW8836 to output BT656 standard video
// Configurations were given by TW8836 vendor
We further check that, I2C read/Writes are perfect and sensor configured for given values.
Also we measured, Pix-clock using scope i.e 27MHz (cool.. I believe it is as per standard).
Then, I tried using mxc_v4l2_tvin application as recommended as follows...
root@sabresd_6dq:/ # mxc_v4l2_tvin -ow 720 -oh 525 -ol 10 -ot 20 -f YUV422
mxc_v4l2_tvin -ow 720 -oh 480 -ol 20
TV decoder chip is tw8836_decoder
driver=mxc_vout, card=DISP3 FG, bus=, version=0x00000000, capabilities=0x04000002
fmt RGB565: fourcc = 0x50424752
fmt BGR24: fourcc = 0x33524742
fmt RGB24: fourcc = 0x33424752
fmt RGB32: fourcc = 0x34424752
fmt BGR32: fourcc = 0x34524742
fmt NV12: fourcc = 0x3231564e
fmt UYVY: fourcc = 0x59565955
fmt YUYV: fourcc = 0x56595559
fmt YUV422 planar: fourcc = 0x50323234
fmt YUV444: fourcc = 0x34343459
fmt YUV420: fourcc = 0x32315559
fmt YVU420: fourcc = 0x32315659
fmt TILED NV12P: fourcc = 0x50564e54
fmt TILED NV12F: fourcc = 0x46564e54
fmt YUV444 planar: fourcc = 0x50343434
start time = 86476 s, 582752 us
Now what we can see is, a window is displayed with noise (may be white noise). I have updated screen snap shot (pleas check).
Can any one give me some hint. What could be gone wrong??? Please lemme know if more info needed...
Please help me....