imx6 12-bit CCIR-656 CSI input

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

imx6 12-bit CCIR-656 CSI input

Jump to solution
3,798 Views
timharvey
Contributor IV

Greetings,

I have an HDMI receiver that can output 12-bit CCIR-656.  The signals are connected to the i.MX6q as follows:

VID_DATA00 -> IPU1_CSI0_DATA08

VID_DATA01 -> IPU1_CSI0_DATA09

VID_DATA02 -> IPU1_CSI0_DATA10

VID_DATA03 -> IPU1_CSI0_DATA11

VID_DATA04 -> IPU1_CSI0_DATA12

VID_DATA05 -> IPU1_CSI0_DATA13

VID_DATA06 -> IPU1_CSI0_DATA14

VID_DATA07 -> IPU1_CSI0_DATA15

VID_DATA08 -> IPU1_CSI0_DATA16

VID_DATA09 -> IPU1_CSI0_DATA17

VID_DATA10 -> IPU1_CSI0_DATA18

VID_DATA11 -> IPU1_CSI0_DATA19

VID_HSYNC -> IPU1_CSI0_HSYNC

VID_VSYNC -> IPU1_CSI0_VSYNC

VID_EN -> IPU1_CSI0_DATA_EN

VID_CLK -> IPU1_CSI0_PIXCLK

The receiver supports embedded sync/timings.  My understanding from the i.MX6QRM is that I should set the following to indicate 12-bit BT.656 with embedded signalling:

IPU1_CSI0_SENS_CONF = 0x00002a20:

  EXT_VSYNC=0 (Internal VSYNC Mode)

  DATA_WIDTH=5 (12bit) (assuming this means width of CCIR data when using CCIR and not 'bits per color')

  SENS_DATA_FORMAT=2 (YUV422 UYVY) (not sure how this relates to CCIR data)

  SENS_PRTCL=2 (CCIR progressive mode)

I find I am not getting frame interrupts (prp_enc_callback) and I believe its because my data bus is not being interpreted correctly such that I don't have frame/field markers being properly decoded.

My questions are:

1. Is there any reason why the i.MX6Q CSI couldn't handle 12bit CCIR-656?  If no, do I have the data bits from the receiver connected properly to the CSI?  (ie if I tell the CSI 12-bit, is the MSB DATA19?)

2. If I am using BT.656 mode (i.MX6QRM 37.4.3.6.3) with embedded timing/signalling I should only need the data signals, and clock (and can remove HSYNC/VSYNC/EN) correct?

3. Is there any advantage at all in using gated clock mode over embedded signalling/timing?

4. When using BT.656 mode what os the meaning of SENS_DATA_FORMAT?

5. When using BT.656 mode with embedded syncs is setting EXT_VSYNC=0 the only register setting needed?

Thanks,

Tim

Labels (2)
0 Kudos
1 Solution
1,000 Views
max_tsai
NXP Employee
NXP Employee

hi,

1. Please check if CSI0 connects parallel or MIPI. Refer GPR1:MIPI_IPU1_MUX (for MX6Q) and IPU_CONF:CSI0_DATA-SOURCE. And you can try to configure your HDMI to output 8-bit BT656 for debug?

2. Yes. With BT656 embedded sync signal, only the data pins are needed.

3. I think only different usage between gated/non-gated mode and BT656/BT1120. Regarding gated/non-gated mode, VSYNC and HSYNC pins are must.

4. CSI0_SENS_DATA_FORMAT not only works for BT656, and represents how the sensor data packs.

5. Yes. https://community.freescale.com/docs/DOC-95412

View solution in original post

0 Kudos
1 Reply
1,001 Views
max_tsai
NXP Employee
NXP Employee

hi,

1. Please check if CSI0 connects parallel or MIPI. Refer GPR1:MIPI_IPU1_MUX (for MX6Q) and IPU_CONF:CSI0_DATA-SOURCE. And you can try to configure your HDMI to output 8-bit BT656 for debug?

2. Yes. With BT656 embedded sync signal, only the data pins are needed.

3. I think only different usage between gated/non-gated mode and BT656/BT1120. Regarding gated/non-gated mode, VSYNC and HSYNC pins are must.

4. CSI0_SENS_DATA_FORMAT not only works for BT656, and represents how the sensor data packs.

5. Yes. https://community.freescale.com/docs/DOC-95412

0 Kudos