You are here

AN75799 UVC DMA buffer size | Cypress Semiconductor

AN75799 UVC DMA buffer size

Summary: 4 Replies, Latest post by SORAME on 17 Jul 2014 06:51 AM PDT
Verified Answers: 0
Last post
Log in to post new comments.
Lei Lei's picture
7 posts


how to change DMA buffer size to 32K from original 

16K? Seems that cannot implement large data transfer 

using 16K buffer.

Thanks a lot!


rskv's picture
Cypress Employee
1134 posts


Please change CY_FX_UVC_STREAM_BUF_SIZE to 32KB in uvc.h
and reduce the CY_FX_UVC_STREAM_BUF_COUNT to 2.

Open the GPIF designer project. Double click on LD_DATA_COUNT and LD_ADDR_COUNT and change counter limit value to 32751, as shown in the attached figure.

sai krishna.

L4869's picture
1 post

Thanks a lot! Sai

Keerthy's picture
Cypress Employee
31 posts



If you are using the project associated with the application note AN75779, then you need to add one more change in the project.

In the UVC.c file you can find one structure glProbeCtrl[];
The last parameter of the structure is set to 0x00, 0x40, 0x00, 0x00 which corresponds to 16K. This parameter indicates the No. of bytes that device can receive in single payload. This need to be changed to 32K.




SORAME's picture
4 posts

 I use 16K buffer, so each usb transfer size should be 1024*16=16384byte, but I use bushound tool to see it's size was always 16380byte. I know the actually transferred size of the video is (16380-12)byte. My question is how can I get the transfer size to 16384byte at each usb transfer?  

Log in to post new comments.