1. 23 2月, 2016 1 次提交
  2. 17 2月, 2016 1 次提交
  3. 18 11月, 2015 1 次提交
    • B
      usb: musb: fix tx fifo flush handling · 68fe05e2
      Bin Liu 提交于
      Here are a few changes in musb_h_tx_flush_fifo().
      
      - It has been observed that sometimes (if not always) musb is unable
        to flush tx fifo during urb dequeue when disconnect a device. But
        it seems to be harmless, since the tx fifo flush is done again in
        musb_ep_program() when re-use the hw_ep.
      
        But the WARN() floods the console in the case when multiple tx urbs
        are queued, so change it to dev_WARN_ONCE().
      
      - applications could queue up many tx urbs, then the 1ms delay could
        causes minutes of delay in device disconnect. So remove it to get
        better user experience. The 1ms delay does not help the flushing
        anyway.
      
      - cleanup the debug code - related to lastcsr.
      
      ----
      Note: The tx fifo flush issue has been observed during device disconnect
      on AM335x.
      
      To reproduce the issue, ensure tx urb(s) are queued when unplug the usb
      device which is connected to AM335x usb host port.
      
      I found using a usb-ethernet device and running iperf (client on AM335x)
      has very high chance to trigger the problem.
      
      Better to turn on dev_dbg() in musb_cleanup_urb() with CPPI enabled to
      see the issue when aborting the tx channel.
      Signed-off-by: NBin Liu <b-liu@ti.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      68fe05e2
  4. 26 5月, 2015 2 次提交
  5. 08 5月, 2015 8 次提交
  6. 28 4月, 2015 1 次提交
  7. 23 2月, 2015 1 次提交
  8. 23 12月, 2014 1 次提交
    • S
      usb: musb: stuff leak of struct usb_hcd · 68693b8e
      Sebastian Andrzej Siewior 提交于
      since the split of host+gadget mode in commit 74c2e936 ("usb: musb:
      factor out hcd initalization") we leak the usb_hcd struct. We call now
      musb_host_cleanup() which does basically usb_remove_hcd() and also sets
      the hcd variable to NULL. Doing so makes the finall call to
      musb_host_free() basically a nop and the usb_hcd remains around for ever
      without anowner.
      This patch drops that NULL assignment for that reason.
      
      Fixes: 74c2e936 ("usb: musb: factor out hcd initalization")
      Cc: <stable@vger.kernel.org> # v3.11+
      Cc: Daniel Mack <zonque@gmail.com>
      Signed-off-by: NSebastian Andrzej Siewior <bigeasy@linutronix.de>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      68693b8e
  9. 04 11月, 2014 1 次提交
  10. 01 7月, 2014 5 次提交
  11. 19 2月, 2014 1 次提交
  12. 18 2月, 2014 1 次提交
  13. 09 1月, 2014 1 次提交
  14. 04 1月, 2014 1 次提交
  15. 09 12月, 2013 1 次提交
  16. 27 11月, 2013 2 次提交
  17. 12 10月, 2013 1 次提交
  18. 28 8月, 2013 1 次提交
  19. 30 5月, 2013 2 次提交
    • A
      USB: MUSB: upgrade the isochronous API · 8a1ea51f
      Alan Stern 提交于
      This patch attempts to fix the isochonour API in the musb host
      driver.  In particular, the urb->start_frame field should always be
      set by the driver; it isn't an input parameter.
      
      The simplest way to accomplish this is to treat all URBs as though the
      URB_ISO_ASAP flag was set.  This won't give the right behavior when an
      underrun occurs, but I don't know enough about the musb driver to
      handle that case.
      
      Unfortunately, I have no way to test this change.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      8a1ea51f
    • F
      usb: musb: host: fix build warning · 91e3af64
      Felipe Balbi 提交于
      very minor patch fixing the following build warning on
      a debug message:
      
      drivers/usb/musb/musb_host.c: In function ‘musb_host_rx’:
      drivers/usb/musb/musb_host.c:1763:4: warning: format ‘%x’ \
      	expects argument of type ‘unsigned int’, but argument \
      	6 has type ‘dma_addr_t’ [-Wformat]
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      91e3af64
  20. 29 5月, 2013 6 次提交
  21. 02 4月, 2013 1 次提交
    • R
      usb: musb: implement (un)map_urb_for_dma hooks · 8408fd1d
      Ruslan Bilovol 提交于
      MUSB controller cannot work in DMA mode with misaligned buffers,
      switching in PIO mode.
      
      HCD core has hooks that allow to override the default DMA
      mapping and unmapping routines for host controllers that have
      special DMA requirements, such as alignment constraints.
      
      It is observed that work in PIO mode is slow and it's better
      to align buffers properly before passing them to MUSB
      
      This increased throughput 80->120 MBits/s over musb@omap4 with
      USB Gigabit Ethernet adapter attached.
      
      Some ideas are taken from ehci-tegra.c
      Signed-off-by: NRuslan Bilovol <ruslan.bilovol@ti.com>
      Signed-off-by: NFelipe Balbi <balbi@ti.com>
      8408fd1d