I have 2 similar evaluation boards: the older one uses OMAP35x and newer one uses AM37x.
While performing evaluation of the USB OTG throughput using the Ethernet over USB I noticed that the transfer rates are much higher (~2x times higher) when the older (OMAP35x based) board is used.
Boards configurations are the same including kernel image, file system, kernel command line, network setup, etc.
Evaluation board acts as an Ethernet adapter (g_ether.ko gadget) connected to a Windows XP host.
Linux kernel is downloaded from the following location: "http://arago-project.org/git/people/?p=sriram/ti-psp-omap.git;a=shortlog;h=refs/heads/master" and is dated 2010-05-13.
While compiling musb_hdrc.ko driver "Use System DMA for Mentor DMA workaround" flag is turned off. With such setup ftp transfer rates go up to 12-13 MBytes/sec (sometimes 17 Mbytes/sec) when OMAP35x-based board is used, and rates drop to ~5-6 MBytes/sec when AM37x based board is used.
If "Use System DMA for Mentor DMA workaround" flag is turned ON for the musb_hdrc.ko driver then transfer rates are approximately the same: ~ 5-6 MBytes/sec for both boards.
Questions are:
1. Why "Use System DMA for Mentor DMA workaround" flag has no effect on a newer board/cpu (AM37x-based)?
2. What is the correct usage of the "Use System DMA for Mentor DMA workaround" parameter? Is it true that it should be turned ON for the OMAP35x and turned OFF for the AM37x?
3. Is it possible to turn "Use System DMA for Mentor DMA workaround" flag OFF for the OMAP35x and have reliable networking using Ethernet over USB (g_ether.ko gadget connected through USB OTG port to a PC host)?
4. When slow performance of the USB OTG on the AM37x will be resolved? (5-6 MBytes/sec is very slow and is unacceptable).
Thank you for any input on the matter.
Eugene