I am using CY3065 to capture RAW12 video stream of 640x480@ 120 FPS, MIPI receiver configuration as follow:
I set the delay time: CyU3PMipicsiSetPhyTimeDelay(1,5); buffer length: 27648; buffer count: 4
I configure sensor and receive data, data length is : 640*480*1.5 = 460800 -> this is correct.
I catch the LV signal, the +width of FV is 3.33us, equal to CX3 MIPI interface configuration H Active.
the -width of LV is 4.17us.
the total time of the LV is 3.66ms, so i can calculate the line numbers are: 3660/(3.33+4.17) = 488 ≈ 480 -> this is correct.
I configure sensor using another parameters and capture data length is : 350640 - > error data length.
the FV signal as follow:
the +width of LV is 3.33us, equal to CX3 MIPI interface configuration H Active.
the -width of LV is 2.04us.
the total time of the LV is 2.66ms, so i can calculate the line numbers are: 2660/(3.33+2.04) = 490 ≈ 480 -> hence, this is correct.
I try to set other parameters to image sensor, so i can change the -width of the LV, and find that if -width of LV less than 4.0us, i can't capture correct data length. The smaller -width of LV, the shorter data length i can capture. if the -width of LV more than 4.0us, i can capture the total frame data: 640*480*1.5 = 460800 Byte.
How to solve this problem?
In CX3_TRM, the CX3 GPIFII state machine is:
when LV change to low, the state of GPIF may be in 5/7/6/8, then LV from low to high, the state will transform to state 3 or state 4.Is there a time limit for this process?
there are 2 line fix data at the end of each frame, 256Byte.When I get the wrong data length，such as i capture 350640 Bytes, the end of 256Byte is correct, they are the same as when i capture correct data length(460800 Bytes).
Can you please check whethere there is any commit buffer failures in DMA Callback in case of less LV blanking (< 4uS) ?
Hi, there is no commit failures event in the case of LV blanking less then 4us. I can receive continous data, but the data length is wrong.
I am not sure what are the parameters you are changing, which is changing the FV and LV time.
Is there any specific reason for which you are changing the parameters?
Can you please use the settings which are working fine?