This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

THS8200: Red color changed to be Green

Part Number: THS8200

RGB444 trhandfer to YPBPR with 720P

The red color is not correct, it changed to be Green. But other color can be displayed correctly.

the register are set as below:

static struct ths8200_std_info ths8200_video_720p_info[] =
{   /*720p*/
        {THS8200_DTG2_CNTL, THS8200_DTG2_CNTL_720P_DEFAULT},
       {THS8200_DTG1_SPEC_A, THS8200_DTG1_SPEC_A_720P_DEFAULT},
        {THS8200_DTG1_SPEC_B, THS8200_DTG1_SPEC_B_720P_DEFAULT},
       {THS8200_DTG1_SPEC_C, THS8200_DTG1_SPEC_C_720P_DEFAULT},
 {THS8200_DTG1_SPEC_D_LSB, THS8200_DTG1_SPEC_D_LSB_720P_DEFAULT},
 {THS8200_DTG1_SPEC_E_LSB, THS8200_DTG1_SPEC_E_LSB_720P_DEFAULT},
 {THS8200_DTG1_SPEC_DEH_MSB, THS8200_DTG1_SPEC_DEH_MSB_720P_DEFAULT},
 {THS8200_DTG1_SPEC_K_LSB, THS8200_DTG1_SPEC_K_LSB_720P_DEFAULT},
 {THS8200_DTG1_TOT_PIXELS_MSB, THS8200_DTG1_TOT_PIXELS_MSB_720P_DEFAULT},
 {THS8200_DTG1_TOT_PIXELS_LSB, THS8200_DTG1_TOT_PIXELS_LSB_720P_DEFAULT},
        {THS8200_DTG1_MODE, THS8200_DTG1_MODE_720P_DEFAULT},
 {THS8200_DTG1_FRAME_FIELD_SZ_MSB, THS8200_DTG1_FRAME_FIELD_SZ_MSB_720P_DEFAULT},
 {THS8200_DTG1_FRAME_SZ_LSB, THS8200_DTG1_FRAME_SZ_LSB_720P_DEFAULT},
 {THS8200_DTG1_FIELD_SZ_LSB, THS8200_DTG1_FIELD_SZ_LSB_720P_DEFAULT},
 {THS8200_DTG2_HS_IN_DLY_LSB, THS8200_DTG2_HS_IN_DLY_LSB_720P_DEFAULT},
 {THS8200_DTG2_VS_IN_DLY_MSB, THS8200_DTG2_VS_IN_DLY_MSB_720P_DEFAULT},
 {THS8200_DTG2_VS_IN_DLY_LSB, THS8200_DTG2_VS_IN_DLY_LSB_720P_DEFAULT},
        {0, 0},
};

/* set color space conversion registers */
    err |= ths8200_i2c_write(THS8200_CSC_R11, 0x00);
    err |= ths8200_i2c_write(THS8200_CSC_R12, 0xDA);
    err |= ths8200_i2c_write(THS8200_CSC_R21, 0x80);
    err |= ths8200_i2c_write(THS8200_CSC_R22, 0x78);
    err |= ths8200_i2c_write(THS8200_CSC_R31, 0x02);
    err |= ths8200_i2c_write(THS8200_CSC_R32, 0x0C);
    err |= ths8200_i2c_write(THS8200_CSC_G11, 0x02);
    err |= ths8200_i2c_write(THS8200_CSC_G12, 0xDC);
    err |= ths8200_i2c_write(THS8200_CSC_G21, 0x81);
    err |= ths8200_i2c_write(THS8200_CSC_G22, 0x94);
    err |= ths8200_i2c_write(THS8200_CSC_G31, 0x81);
    err |= ths8200_i2c_write(THS8200_CSC_G32, 0xDC);
    err |= ths8200_i2c_write(THS8200_CSC_B11, 0x00);
    err |= ths8200_i2c_write(THS8200_CSC_B12, 0x4A);
    err |= ths8200_i2c_write(THS8200_CSC_B21, 0x02);
    err |= ths8200_i2c_write(THS8200_CSC_B22, 0x0C);
    err |= ths8200_i2c_write(THS8200_CSC_B31, 0x80);
    err |= ths8200_i2c_write(THS8200_CSC_B32, 0x30);
    err |= ths8200_i2c_write(THS8200_CSC_OFFS1, 0x00);
    err |= ths8200_i2c_write(THS8200_CSC_OFFS12, 0x08);
    err |= ths8200_i2c_write(THS8200_CSC_OFFS23, 0x02);
    err |= ths8200_i2c_write(THS8200_CSC_OFFS3, 0x00);

       /* 30bit RGB 4:4:4 input data format */
    err |= ths8200_i2c_write(THS8200_DATA_CNTL,THS8200_DATA_CNTL_MODE_30BIT_YCBCR);
       #endif

    err |= ths8200_i2c_write(THS8200_DTG1_Y_SYNC1_LSB,THS8200_DTG1_CBCR_SYNC1_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_Y_SYNC2_LSB,THS8200_DTG1_Y_SYNC2_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_Y_SYNC3_LSB,THS8200_DTG1_Y_SYNC3_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_CBCR_SYNC1_LSB,THS8200_DTG1_CBCR_SYNC1_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_CBCR_SYNC2_LSB,THS8200_DTG1_CBCR_SYNC2_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_CBCR_SYNC3_LSB,THS8200_DTG1_CBCR_SYNC3_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_Y_SYNC_MSB,THS8200_DTG1_Y_SYNC_MSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_CBCR_SYNC_MSB,THS8200_DTG1_CBCR_SYNC_MSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_SPEC_H_LSB,THS8200_DTG1_SPEC_H_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_SPEC_K_MSB,THS8200_DTG1_SPEC_K_MSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_FLD_FLIP_LINECNT_MSB,THS8200_DTG1_FLD_FLIP_LINECNT_MSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG1_LINECNT_LSB,THS8200_DTG1_LINECNT_LSB_DEFAULT);
    err |= ths8200_i2c_write(THS8200_DTG2_HS_IN_DLY_MSB,THS8200_DTG2_HS_IN_DLY_MSB_DEFAULT);

Any suggestion?

Thanks