All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tim Nordell <tim.nordell@logicpd.com>
To: linux-omap@vger.kernel.org
Cc: linux-usb@vger.kernel.org
Subject: DM3730 + MUSB host mode + DMA + USB Ethernet dongle = Fail
Date: Wed, 06 May 2015 18:17:47 -0500	[thread overview]
Message-ID: <554AA11B.9040909@logicpd.com> (raw)

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.

Thanks,
Tim


             reply	other threads:[~2015-05-06 23:18 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-05-06 23:17 Tim Nordell [this message]
     [not found] ` <554AA11B.9040909-L+YfUVVR8+RBDgjK7y7TUQ@public.gmane.org>
2015-05-07 16:06   ` DM3730 + MUSB host mode + DMA + USB Ethernet dongle = Fail Tony Lindgren
     [not found]     ` <20150507160606.GB15563-4v6yS6AI5VpBDgjK7y7TUQ@public.gmane.org>
2015-05-07 16:16       ` Felipe Balbi
     [not found]         ` <20150507161656.GB29183-HgARHv6XitJaoMGHk7MhZQC/G2K4zDHf@public.gmane.org>
2015-05-07 18:17           ` Tim Nordell
     [not found]             ` <554BAC48.2050406-L+YfUVVR8+RBDgjK7y7TUQ@public.gmane.org>
2015-05-07 21:07               ` Chan-Taek Park
     [not found]                 ` <CAPM0aKVSJfyBj-FzdTDC+PFmHOmch39F26OF_0CzK5a704AVpA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-07 21:21                   ` Bin Liu
     [not found]                     ` <CADYTM3YGgm9b+vpxH8jJk41Cc9no=-pPydfHQsvR1FehbRCTxw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2015-05-07 21:26                       ` Tim Nordell
2015-05-07 21:41                         ` Tim Nordell
2015-05-07 22:12                           ` Tim Nordell
2015-05-08 18:24                             ` Tim Nordell
     [not found]                               ` <554CFF6E.9020208-L+YfUVVR8+RBDgjK7y7TUQ@public.gmane.org>
2015-05-08 21:11                                 ` Ruslan Bilovol

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=554AA11B.9040909@logicpd.com \
    --to=tim.nordell@logicpd.com \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.