I have a comment about the following line:
"Since my system MUST work on USB 2.0, I think it is impossible to increase brust length more than one"
You can have burst length set to any value between 1 to 16 and still it can work on USB2.0.
You can set the burst length based on the USB speed that you detect in the firmware. As you know the descriptors for Super speed and USB2.0 are different. So it should not be any issue in using burst.
Thank you very much.
In USBBulkSourceSink, burstLen of ep config is set as
"epCfg.burstLen = (usbSpeed == CY_U3P_SUPER_SPEED) ? (CY_FX_EP_BURST_LENGTH) : 1;".
So, I thought burst lengh more one is not appliable for USB 2.0.