STM32F746 Discovery Board. How to get the maximum write speed for USB Host MSC. I have managed to get 7.5 MBytes/s. It is possible to get 10MBytes/sec
Using the Cube generated code for FATFS and USBH-MSC I can connect to an external 500G SSD drive using USB 2.0 HS.
With the USB drive I can get 38MBytes/sec from my PC.
With the Discovery board I have only been able to get up to 7.5MBytes/sec.
Disk is formatted FAT32.
The FIFO buffers in the USB_OTG had to be adjusted for more TXFIFO space to get that speed.
investigating the data path I can see that the hardware has it's own DMA that looks to be able to handle 65536 words at a time.
However the usbh_msc_bot.c file seems to only pass on one sector ( 512 bytes ) at a time to the DMA controller. I have tried modifying the code in this area but have not been able to keep the system working. Is it worth trying to get the write code to use the full size of the DMA or is there a technical reason ( USB spec or chip design ) that makes this not worthwhile?
