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.

TDA4VMXEVM: TDA4VMEVM: Custom Camera Bring up Issue

Part Number: TDA4VMXEVM

Hi,

We are working on TDA4 EVM Board(and Fusion Board) and we have a camera sensor configured for 10-bit RAW 1600x1300 60fps 2-lane MIPI CSI2 at 800Mbps

We would like to know the configuration changes required at TDA4 CSI2-RX side to receive the stream.


We have confirmed the following:


1. Fusion Board Deserializer detects DS90UB953 serializer and is in lock state
2. Camera streaming is enabled only during StreamOn function of the Custom Camera sensor Driver in TDA4. There is no CSI2 errors in Deserializer and the frames and lines counts increment in Deserializer. In fact we have interfaced the same Camera sensor with 953-960 SerDes in couple of other platforms.
3. Enabling pattern from Serializer works fine. We enabled Color Pattern for 4-lane and 2-lane and for 800Mbps and 1600Mbps(and the combinations). The resolution though was 1920x1080 12-bit RAW(We can also try the 1600x1300 10-bit and check once)
4. We tried hard coding Deserializer CSI2 timings matching Color Pattern for 800 Mbps 2-lane, when running for Custom Camera sensor Capture, but still no luck
5. We tried almost all the laneBandSpeed settings of CSI2-RX for Custom Camera Sensor Capture, but no difference.

Processor SDK version is 7.0. We use single cam application. Can you please give us pointers to debug further. Also let us know how/where to change the CSI2 timing parameters and settings matching the sensor configuration.

  • Hello Sanny,

    dataformat and bitwidth is specified in IssSensor_CreateParams

    Please look for the following code

    {TIVX_RAW_IMAGE_16_BIT, 11},    /*dataFormat and MSB [0]*/

    MSB = 11 means that the sensor output is 12-bit. For 10 bit please try setting it to 9.

    Regards,

    Mayank

  • Hi Mayank ,

    Thanks for replied, We have tried this configuration but still same issue.

  • Thanks for confirming. Can you please try 1920x1080 RAW10 test pattern from UB960? Based on the result of that experiment we can decide how to debug further.

  • Hi Mayank,

    Yes, we tried that and issue seems to be with RAW10. We are not receiving RAW10 for the same test pattern configuration from serializer. RAW12 works

  • Hi Mayank,

    RAW12 is hardcoded in vx_capture_target.c for some reason. It is not servicing the 11-bit or 9-bit settings. Hardcoding 10-bit in vx_capture_target.c makes it work. May us know the reason for this ? Or are we missing some configuration ?

  • Hello Sanny,

    Are you referring to the function tivxVpacVissSetInputParams? We will look into it. If this is a bug we will fix it in the next release. Will you be able to use your current workaround till then?

    Regards,

    Mayank

  • Hi Mayank,
    Modification is in function tivxCaptureExtractDataFormat() under this condition:
                if ((uint32_t)TIVX_OBJ_DESC_RAW_IMAGE == prms->img_obj_desc[0]->type)
                {
                    createParams->chCfg[loopCnt].inCsiDataType =
                        /*FVID2_CSI2_DF_RAW12*/FVID2_CSI2_DF_RAW10;
                }

    The above sets the STREAM0, datatype select register as RAW10 and this made the capture work. Alignment in function: tivxCaptureExtractCcsFormat() did not make much of a difference(we face below follow up question issue), but yeah we have modified here too to FVID2_CCSF_BITS10_UNPACKED16


    A follow up question on this.

    I see that the verified sensors e.g. imx390 are RGGB Bayer sensors. We have connected the BGGR sensor. I see that Flex CFA registers perform the demosaicing and also the configuration to perform comes from the DCC files. Is this understanding correct ? Suppose we need to change the Bayer format to BGGR, should we need to modify the DCC files ? I believe BGGR is not supported yet ?

    Currently we have disabled DCC, AEWB and LDC in the Single Cam App. If so, what would be the default configuration of Flex CFA ?
  • Sanny,

    DCC is needed for correct CFA configuration. If you need further details, please create a new thread for this topic.

    Regards,

    Mayank