linux-arm-kernel.lists.infradead.org archive mirror
 help / color / mirror / Atom feed
* [RFC PATCH 0/4] USB: HCD/EHCI: giveback of URB in tasklet context
@ 2013-06-09 15:18 Ming Lei
  2013-06-09 15:18 ` [RFC PATCH 1/4] USB: HCD: support " Ming Lei
                   ` (4 more replies)
  0 siblings, 5 replies; 66+ messages in thread
From: Ming Lei @ 2013-06-09 15:18 UTC (permalink / raw)
  To: linux-arm-kernel

Hi,

The patchset supports to run giveback of URB in tasklet context, so that
DMA unmapping/mapping on transfer buffer and compelte() callback can be
run with interrupt enabled, then time of HCD interrupt handler can be
saved much. Also this approach may simplify HCD since HCD lock needn't
be released any more before calling usb_hcd_giveback_urb().

The patchset enables the mechanism on EHCI HCD.

Patch 3/4 improves interrupt qh unlink on EHCI HCD when the mechanism
is introduced.

In the commit log of patch 4/4, detailed test result on three machines
(ARM A9/A15 dual core, X86) are provided about transfer performance and
ehci irq handling time. From the result, no transfer performance loss
is found and ehci irq handling time can drop much with the patchset.

 drivers/usb/core/hcd.c            |  170 +++++++++++++++++++++++++++++++------
 drivers/usb/host/ehci-fsl.c       |    2 +-
 drivers/usb/host/ehci-grlib.c     |    2 +-
 drivers/usb/host/ehci-hcd.c       |   18 ++--
 drivers/usb/host/ehci-hub.c       |    1 +
 drivers/usb/host/ehci-mv.c        |    2 +-
 drivers/usb/host/ehci-octeon.c    |    2 +-
 drivers/usb/host/ehci-pmcmsp.c    |    2 +-
 drivers/usb/host/ehci-ppc-of.c    |    2 +-
 drivers/usb/host/ehci-ps3.c       |    2 +-
 drivers/usb/host/ehci-q.c         |    6 +-
 drivers/usb/host/ehci-sched.c     |   60 ++++++++++++-
 drivers/usb/host/ehci-sead3.c     |    2 +-
 drivers/usb/host/ehci-sh.c        |    2 +-
 drivers/usb/host/ehci-tegra.c     |    2 +-
 drivers/usb/host/ehci-tilegx.c    |    2 +-
 drivers/usb/host/ehci-timer.c     |   43 ++++++++++
 drivers/usb/host/ehci-w90x900.c   |    2 +-
 drivers/usb/host/ehci-xilinx-of.c |    2 +-
 drivers/usb/host/ehci.h           |    3 +
 include/linux/usb/hcd.h           |   16 ++++
 21 files changed, 295 insertions(+), 48 deletions(-)


Thanks,
--
Ming Lei

^ permalink raw reply	[flat|nested] 66+ messages in thread

end of thread, other threads:[~2013-06-15  1:49 UTC | newest]

Thread overview: 66+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-06-09 15:18 [RFC PATCH 0/4] USB: HCD/EHCI: giveback of URB in tasklet context Ming Lei
2013-06-09 15:18 ` [RFC PATCH 1/4] USB: HCD: support " Ming Lei
2013-06-09 15:58   ` Alan Stern
2013-06-10  8:12     ` Ming Lei
2013-06-10  8:43   ` Oliver Neukum
2013-06-10  9:23     ` Ming Lei
2013-06-10  9:31       ` Oliver Neukum
2013-06-10  9:51         ` Ming Lei
2013-06-09 15:18 ` [RFC PATCH 2/4] USB: EHCI: don't release ehci->lock if URB giveback " Ming Lei
2013-06-09 16:06   ` Alan Stern
2013-06-10  9:10     ` Ming Lei
2013-06-09 15:18 ` [RFC PATCH 3/4] USB: EHCI: improve interrupt qh unlink Ming Lei
2013-06-09 15:18 ` [RFC PATCH 4/4] USB: EHCI: support running URB giveback in tasklet context Ming Lei
2013-06-09 15:48 ` [RFC PATCH 0/4] USB: HCD/EHCI: giveback of URB " Alan Stern
2013-06-10  6:05   ` Ming Lei
2013-06-10 14:03     ` Alan Stern
2013-06-10 14:12       ` Oliver Neukum
2013-06-10 15:33         ` Alan Stern
2013-06-10 15:37       ` Ming Lei
2013-06-10 17:36         ` Alan Stern
2013-06-10 18:52           ` Steven Rostedt
2013-06-10 20:47             ` Alan Stern
2013-06-10 20:54               ` Steven Rostedt
2013-06-11  8:40                 ` Ming Lei
2013-06-10 20:51           ` Alan Stern
2013-06-11  6:19             ` Ming Lei
2013-06-11  5:40           ` Ming Lei
2013-06-11  7:18             ` Oliver Neukum
2013-06-11  8:14               ` Ming Lei
2013-06-11  8:49                 ` Oliver Neukum
2013-06-11  9:27                   ` Ming Lei
2013-06-11 10:51                     ` Oliver Neukum
2013-06-11 11:19                       ` Ming Lei
2013-06-11 19:10             ` Alan Stern
2013-06-12  2:43               ` Ming Lei
2013-06-12  6:41                 ` Ming Lei
2013-06-12  7:45                 ` Thomas Gleixner
2013-06-13  2:25                   ` Ming Lei
2013-06-13 14:54                     ` Alan Stern
2013-06-13 18:47                       ` Greg Kroah-Hartman
2013-06-13 19:41                         ` Alan Stern
2013-06-13 20:08                           ` Steven Rostedt
2013-06-13 21:09                             ` Alan Stern
2013-06-13 22:24                               ` Steven Rostedt
2013-06-13 23:08                                 ` Alan Stern
2013-06-14  1:27                               ` Ming Lei
2013-06-14  0:35                           ` Greg Kroah-Hartman
2013-06-14  1:53                             ` Ming Lei
2013-06-14  6:05                               ` Greg Kroah-Hartman
2013-06-14 10:05                                 ` Ming Lei
2013-06-14  1:37                           ` Ming Lei
2013-06-14  3:24                           ` Ming Lei
2013-06-14 14:56                             ` Alan Stern
2013-06-14 15:15                               ` Ming Lei
2013-06-14 20:23                                 ` Alan Stern
2013-06-14 21:09                                   ` Thomas Gleixner
2013-06-15  1:49                                   ` Ming Lei
2013-06-14  2:03                       ` Ming Lei
2013-06-12 14:35                 ` Alan Stern
2013-06-12 15:10                   ` Oliver Neukum
2013-06-13  3:41                   ` Ming Lei
2013-06-13 15:05                     ` Alan Stern
2013-06-12  9:11               ` Oliver Neukum
2013-06-12 10:11                 ` Ming Lei
2013-06-12 10:19                   ` Oliver Neukum
2013-06-12 11:33                     ` Ming Lei

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).