AnsweredAssumed Answered

i.MX6 Solo with ADV7180 screen scrolling down in NTSC mode

Question asked by Oliver Kuo on Nov 22, 2013
Latest reply on Dec 19, 2013 by Oliver Kuo



My target board with ADV7180 connected to i.MX6 Solo CS0 and BSP is "imx-android-r13.4.1".

I test ADV7180 video in with camera app, PAL mode is good but under NTSC mode, display keep scrolling down and below message posted on the console.

"imx-ipuv3 imx-ipuv3.0: IPU Warning - IPU_INT_STAT_5 = 0x00000001"


I enabled ioctl_enum_framesizes in adv7180.c and CameraHal get preview size through VIDIOC_ENUM_FRAMESIZES and VIDIOC_G_FMT, but adv7180.c return different size and cause buffer allocated failed.

Active size will be returned for VIDIOC_ENUM_FRAMESIZES and raw size returned for VIDIOC_G_FMT, I'm curiously the occasion of using raw or active size?

If adv7180 driver report active size all the time, camera app can display preview properly when PAL mode, but display keep scrolling down under NTSC mode.

If adv7180 report raw size, camera app can't display preview no matter PAL nor NTSC mode and below error message posted on logcat.


E/v_hwc   ( 2104): Failed in _Blit: status=-20

E/v_hwc   ( 2104): Failed in hwcCompose: status=-20

E/v_hwc   ( 2104): Failed in hwcSet: status=-20

E/v_hwc   ( 2104): hwc_set(233): Failed in set


I think active size should be applied but I can't figure out why screen keep scrolling down at NTSC mode, please share your experience.

Since no Hsync/Vsync connected between CS0 and ADV7180, maybe EAV/SAV incorrect setting for NTSC and cause vertical synchronization error?

} else if (width == 720 && (height == 525 || height == 480)) {
/* NTSC case */
* Field0BlankEnd = 0x7, Field0BlankStart = 0x3,
* Field0ActiveEnd = 0x5, Field0ActiveStart = 0x1
ipu_csi_write(ipu, csi, 0xD07DF, CSI_CCIR_CODE_1);
* Field1BlankEnd = 0x6, Field1BlankStart = 0x2,
* Field1ActiveEnd = 0x4, Field1ActiveStart = 0
ipu_csi_write(ipu, csi, 0x40596, CSI_CCIR_CODE_2);
ipu_csi_write(ipu, csi, 0xFF0000, CSI_CCIR_CODE_3);
} else {


After study EAV/SAV, the CCIR_CODE seems only reflect the different initial field of PAL and NTSC!?

Trying to make mxc_v4l2_tvin working on my platform.


Anyone can share your experience.