AnsweredAssumed Answered

Failed to capture correct image from OV10633 on MX6Q CSI0

Question asked by Robbie Jiang on Dec 21, 2015
Latest reply on Jan 4, 2016 by Robbie Jiang

Hi all,

 

We are working on supporting OV10633 on MX6Q/Linux platform.

OV10633 is connected to SOC through CSI0 port.

 

By now, we can capture image from CSI0, but the image is corrupted (as the attachment).

Seems that there is something wrong with synchronization.

 

However, I'm not sure if there is anything wrong with the MX6Q CSI configuration.

OV10633 input clock (XVCLK) is 24MHz, and it outputs PIXCLK/VSYNC/HREF signals

and 8-bit UYVY parallel data.  And these output signals look good.

On the other side,  MX6Q CSI0 is configured in gated-mode, 8-bit data width, UYVY format, 

and the data destination is IDMAC via SMFC. ( IPU0_CSI0_SENS_CONF is 0x04008A00 )

 

Following is the IPU and CSI configuration:

 

imx-ipuv3 imx-ipuv3.0: init channel = 15

imx-ipuv3 imx-ipuv3.0: initializing idma ch 0 @ c08c0000

imx-ipuv3 imx-ipuv3.0: ch 0 word 0 - 00000000 00000000 00000000 E0001800 000B3C9F

imx-ipuv3 imx-ipuv3.0: ch 0 word 1 - 03240000 00648000 0147C000 00027FC0 00000000

imx-ipuv3 imx-ipuv3.0: PFS 0xa,

imx-ipuv3 imx-ipuv3.0: BPP 0x3,

imx-ipuv3 imx-ipuv3.0: NPB 0x1f

imx-ipuv3 imx-ipuv3.0: FW 1279,

imx-ipuv3 imx-ipuv3.0: FH 719,

imx-ipuv3 imx-ipuv3.0: EBA0 0x19200000

imx-ipuv3 imx-ipuv3.0: EBA1 0x19200000

imx-ipuv3 imx-ipuv3.0: Stride 2559

imx-ipuv3 imx-ipuv3.0: scan_order 0

imx-ipuv3 imx-ipuv3.0: uv_stride 0

imx-ipuv3 imx-ipuv3.0: u_offset 0x0

imx-ipuv3 imx-ipuv3.0: v_offset 0x0

imx-ipuv3 imx-ipuv3.0: Width0 0+1,

imx-ipuv3 imx-ipuv3.0: Width1 0+1,

imx-ipuv3 imx-ipuv3.0: Width2 0+1,

imx-ipuv3 imx-ipuv3.0: Width3 0+1,

imx-ipuv3 imx-ipuv3.0: Offset0 0,

imx-ipuv3 imx-ipuv3.0: Offset1 0,

imx-ipuv3 imx-ipuv3.0: Offset2 0,

imx-ipuv3 imx-ipuv3.0: Offset3 0

imx-ipuv3 imx-ipuv3.0: IPU_CONF =       0x00000101

imx-ipuv3 imx-ipuv3.0: IDMAC_CONF =     0x0000002F

imx-ipuv3 imx-ipuv3.0: IDMAC_CHA_EN1 =  0x00000001

imx-ipuv3 imx-ipuv3.0: IDMAC_CHA_EN2 =  0x00000000

imx-ipuv3 imx-ipuv3.0: IDMAC_CHA_PRI1 =         0x18800001

imx-ipuv3 imx-ipuv3.0: IDMAC_CHA_PRI2 =         0x00000000

imx-ipuv3 imx-ipuv3.0: IDMAC_BAND_EN1 =         0x00000000

imx-ipuv3 imx-ipuv3.0: IDMAC_BAND_EN2 =         0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_CHA_DB_MODE_SEL0 =   0x00000001

imx-ipuv3 imx-ipuv3.0: IPU_CHA_DB_MODE_SEL1 =   0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_CHA_TRB_MODE_SEL0 =  0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_CHA_TRB_MODE_SEL1 =  0x00000000

imx-ipuv3 imx-ipuv3.0: DMFC_WR_CHAN =   0x00000090

imx-ipuv3 imx-ipuv3.0: DMFC_WR_CHAN_DEF =       0x202020F6

imx-ipuv3 imx-ipuv3.0: DMFC_DP_CHAN =   0x00009694

imx-ipuv3 imx-ipuv3.0: DMFC_DP_CHAN_DEF =       0x2020F6F6

imx-ipuv3 imx-ipuv3.0: DMFC_IC_CTRL =   0x00000002

imx-ipuv3 imx-ipuv3.0: IPU_FS_PROC_FLOW1 =      0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_FS_PROC_FLOW2 =      0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_FS_PROC_FLOW3 =      0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_FS_DISP_FLOW1 =      0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_VDIC_VDI_FSIZE =     0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_VDIC_VDI_C =         0x00000000

imx-ipuv3 imx-ipuv3.0: IPU_IC_CONF =    0x00000000

imx-ipuv3 imx-ipuv3.0: IPU0_CSI0_CONF =         0x04008A00

imx-ipuv3 imx-ipuv3.0: IPU1_CSI1_CONF =         0x00000000

imx-ipuv3 imx-ipuv3.0: IPU0_CSI0_SENS_FRM_SIZE =        0x02CF04FF

imx-ipuv3 imx-ipuv3.0: IPU0_CSI0_ACT_FRM_SIZE =         0x02CF04FF

imx-ipuv3 imx-ipuv3.0: IPU0_CSI0_OUT_FRM_CTRL =         0x00000000

imx-ipuv3 imx-ipuv3.0: IPU1_CSI1_SENS_FRM_SIZE =        0x00000000

imx-ipuv3 imx-ipuv3.0: IPU1_CSI1_ACT_FRM_SIZE =         0x00000000

imx-ipuv3 imx-ipuv3.0: IPU1_CSI1_OUT_FRM_CTRL =         0x00000000

 

 

Anything wrong with my IPU/CSI configuration?

Any idea?

 

Thanks,

Robbie

Attachments

Outcomes