CX3 UVC Stream only works with large hblank

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
samkay
Level 1
Level 1
First reply posted First question asked Welcome!

Hi,

I have the following settings working:

Sensor: RAW8 , 1280x800, 2 lanes, V-blank=30 lines, V-blank=400
MIPI settings: CY_U3P_CSI_DF_RAW8
GPIF: 8-bit
PLL Pixel Clock output settings: 100MHz (max)
UVC Settings: Works fine using {8bbp,1280 width} on Linux hosts or {16bpp,640 width } on Windows hosts

Streaming works fine when the sensor's H-Blank set to 400 pixels (gives 70fps).  However, as soon as I try to reduce it, streaming stops and I guess DMA overflow happens.

We are way below the bandwidth USB requirements and we should easily get 90fps (~90MBps).  How can we achieve that?

Thanks

 

 

 

 

 

 

 

 

0 Likes
1 Solution

Hello Sam,

The API CyU3PDmaMultiChannelCommitBuffer () usually fails with error code 71 when the host is slow in issuing IN tokens to clear the DMA buffers filled b CX3. We recommend to use a greater line blanking to avoid this issue. This is already mentioned in the following KBA:
https://community.infineon.com/t5/Knowledge-Base-Articles/Handling-Commit-Buffer-Failures-Occurred-d...

Can you please try to configure CX3 to pack the incoming data into 16 bits and check if you are still facing this issue? Please refer to the following KBA to understand how to pack the incoming data into 16 bits:

https://community.infineon.com/t5/Knowledge-Base-Articles/Streaming-RAW10-Format-Input-Data-to-16-24...

Please let me know if you have any queries on this.

Best Regards,
Jayakrishna

View solution in original post

0 Likes
5 Replies