AnsweredAssumed Answered

Programming the CSC on the ADV7441

Question asked by IanC on Nov 30, 2012
Latest reply on Sep 19, 2013 by spirov

I need some guidance to program the CSC (DPP or CP) on an ADV7441A.


I'm converting from RGB to YUV 16 bit 4:2:2 output on our own hardware; HDMI / CVBS works just fine but when it comes to the RGB inputs I need to remap the input channels to those supported by the auto setup functions.


I've been following the RGB/YUV conversion algorithm in the HW guide - and remapped the coefficients to the input channels/ADC's I'm using - but for some reason my output colors are all incorrect.


Can someone help with how to configure the DPP/CP CSC matrices and input/output modes?


in a nutshell:

AIN1 = Red => ADC0   -> IN_A

AIN2 = Blue  => ADC2 -> IN_C

AIN3 = Green  => ADC1 -> IN_B


I have tried


IN_CSPACE       =1 (for rgb 0-255 input)

RGB_OUT        = 0 (YUV output – although this is ignored in manual csc mode I think?)

CSC_COEFF_SEL  = 0 (Manual csc configuration)

CP_CSC_EN      = 0 (disable CP_CSC , use the DPP CSC for 4:2:2 decimation?)

SWAP_CSC_COEFF = 1 (DPP_CSC implements conversion)


for testing, I modified the coefficients to pick up one input channel at a time - and indeed by matching where output video illuminates to the input signal I can verify the AIN/ADC/IN_x channel mappings are correct. However, whenever I pick up one input signal at a time, the output is_always_ green.  And this is the bit I can't figure out. It's almost like a second conversion is happening after the DPP CSC output.. but not quite. When I enabled other input channels I do see color but they don't follow the channel order (SMPTE bars swapped). I've been through each of the permutations of the 3 inputs one by one which should have found a working combination but I still can't get the correct output. (which is why I suspect some other conversion is happening that I need to adjust but haven't found details on how or why ... )


Any suggestions appreciated.