This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM5748: USB controller gets inactive if no traffic is received from host

Part Number: AM5748

Hi, 

we are using IDK571, TI SDK 6.0.0.7.

On IDK571 we activate RNDIS
modprobe g_ether

Case a) Windows 10 USB host connected directly to IDK571's

I connect a Windows 10 USB host is connected directly to IDK571's USB2 port (device)

IDK571 reports 

        [ 875.468771] 000: g_ether gadget: high-speed config #2: RNDIS

We assign ipv4 addresses to host (USB RNDIS device) and device, ping works.

If I try to upload a file from Windows host to IDK

           scp <file> root@192.168.20.20

I get an extremely low throughput of about 146.1KB/s.


Case b) Windows 10 USB host connected via a hub to IDK571's

I connect 

       Windows 10 USB host  <--> USB hub <-->  IDK571's USB2 port

(I tested with powered or unpowered USB2 hubs)

If I try to upload a file from Windows host to IDK

           scp <file> root@192.168.20.20

I get an expected throughput of about 7MB/s.

------

Our best guess is that the DWC3 USB controller gets inactive/idle (i.e. cannot send data) if no traffic is received from host. This could explain the extremly low data rate.

For unknown reason, a USB hub seems to keep the DWC3 USB controller active and the issue disappears

iperf3 also reveals a high asymmetry:

Windows host 

    iperf3.exe -c 192.168.20.20

    [  5]   0.00-10.00  sec   238 MBytes   200 Mbits/sec                  sender

    iperf3.exe -c 192.168.20.20 -R

    [  5]   0.00-10.13  sec  27.2 MBytes  22.5 Mbits/sec   92             sender

Behaviour is the same with latest 5.4 kernel (5.4.264-rt88).

We suspect that with the standard device tree settings the DWC3 controller is not properly configured. (evidence is that we have RNDIS running with VxWorks on a am43x platform (has the same dwc3 controller) and do not see this issue)

Any help is appreciated. 

Thanks, Chris