* Tim Nordell <tim.nordell@xxxxxxxxxxx> [150506 16:19]: > Hi all - > > I'm running kernel v3.19 (although I've tried v4.1-rc2's version of the MUSB > code) on a DM3730 processor. I'm running into an issue where if I enable > MUSB Inventra DMA, plug in a USB Ethernet Dongle, and run iperf between the > dongle and a PC, the MUSB driver stops working. I get the following in my > kernel log, twice back-to-back: > > musb_host_rx 1762: Rx interrupt with no errors or packet! > > Any ideas? > > The test above works in PIO mode, but I'd like to reduce the system CPU > usage of the driver by using DMA. I'm using a ASIX AX88772B Ethernet > dongle, although, this shouldn't impact the error above. I also tried > re-reading the RXCSR register immediately after the error printout above, > and the immediate subsequent time it contains the bit the driver is looking > for. I tried nesting the check so that if the bit the driver is looking for > is set with an immediate subsequent read that it would continue past it, but > it still keels over (albeit lasting maybe a second longer). > > Something about this feels race conditiony too. Depending on the kernel > configuration options in the kernel debug menu (which slows down other parts > of the kernel), or if I enable verbose debug message output from the MUSB > driver, it lasts much, much longer before keeling over as a system. You can > restore normal behavior by unplugging/replugging in the device. This sounds like some issue dealing with certain size transfers where there's data remaining after a DMA transfer. You might be able to make it easily reproducable with a variable size ping from your PC even with debugging enabled. Something like the script below. Regards, Tony 8< -------------- #!/bin/bash device=$1 size=$2 while [ 1 ]; do #echo "Pinging with size $size" if ! ping -w0 -c1 $device -s$size > /dev/null 2>&1; then break; fi size=$(expr $SIZE + 1) if [ $size -gt 8192 ]; then size=1 fi done echo "Test ran up to $size" -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html