netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/12] usbnet: usb_control_msg cleanup
@ 2012-10-02  6:51 Ming Lei
  2012-10-02  6:51 ` [PATCH 03/12] usbnet: cdc-ncm: apply introduced usb command APIs Ming Lei
                   ` (7 more replies)
  0 siblings, 8 replies; 45+ messages in thread
From: Ming Lei @ 2012-10-02  6:51 UTC (permalink / raw)
  To: David S. Miller, Greg Kroah-Hartman; +Cc: Oliver Neukum, netdev, linux-usb

Hi,

This patch set introduces 3 helpers for handling usb read, write
and write_async command, and replaces the low level's implemention
with the generic ones.

Firstly, it is a cleanup and about 300 lines code can be saved.

Secondly, the patch fixes DMA on the buffer which is embedded inside
one dynamic allocated buffer, and such usages can be found
in cdc-ncm, sierra_net, mcs7830 and asix drivers.

Finally, almost all low level drivers don't consider runtime
PM situation when reading/writing control command to device via
usb_control_message. For example, 'ethtool' may touch a suspended
device and kind of below message will be dumped:

	[tom@tom-pandaboard ~]$ ethtool eth0
	Settings for eth[  117.084411] smsc95xx 1-1.1:1.0 eth0: Failed to read register index 0x00000114
	0:
	[  117.093139] smsc95xx 1-1.1:1.0 eth0: Error reading MII_ACCESS
	[  117.099395] smsc95xx 1-1.1:1.0 eth0: MII is busy in smsc95xx_mdio_read

This patch fixes the problem above by holding runtime PM referece
count before calling usb_control_msg.

 drivers/net/usb/asix_common.c |  117 ++++-------------------------------
 drivers/net/usb/cdc_ncm.c     |   73 +++++++---------------
 drivers/net/usb/dm9601.c      |  107 +++++---------------------------
 drivers/net/usb/int51x1.c     |   52 +---------------
 drivers/net/usb/mcs7830.c     |   85 ++-----------------------
 drivers/net/usb/net1080.c     |  110 +++++++++------------------------
 drivers/net/usb/plusb.c       |   11 ++--
 drivers/net/usb/sierra_net.c  |   45 +++++---------
 drivers/net/usb/smsc75xx.c    |   39 +++++-------
 drivers/net/usb/smsc95xx.c    |  115 ++++++++--------------------------
 drivers/net/usb/usbnet.c      |  137 +++++++++++++++++++++++++++++++++++++++++
 include/linux/usb/usbnet.h    |    6 ++
 12 files changed, 295 insertions(+), 602 deletions(-)


Thanks,
--
Ming Lei

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

end of thread, other threads:[~2012-10-15 14:27 UTC | newest]

Thread overview: 45+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-10-02  6:51 [PATCH 00/12] usbnet: usb_control_msg cleanup Ming Lei
2012-10-02  6:51 ` [PATCH 03/12] usbnet: cdc-ncm: apply introduced usb command APIs Ming Lei
2012-10-02  6:51 ` [PATCH 04/12] usbnet: dm9601: " Ming Lei
2012-10-02  6:51 ` [PATCH 05/12] usbnet: int51x1: " Ming Lei
2012-10-02  6:51 ` [PATCH 06/12] usbnet: mcs7830: " Ming Lei
2012-10-02  6:51 ` [PATCH 09/12] usbnet: sierra_net: " Ming Lei
2012-10-02  6:51 ` [PATCH 10/12] usbnet: smsc75xx: " Ming Lei
2012-10-02  6:51 ` [PATCH 12/12] usbnet: make device out of suspend before calling usbnet_read/write_cmd Ming Lei
2012-10-09  8:50   ` Oliver Neukum
     [not found]     ` <2913414.gCAxlQ38lG-ugxBuEnWX9yG/4A2pS7c2Q@public.gmane.org>
2012-10-10  2:33       ` Ming Lei
     [not found]         ` <CACVXFVNb-APsJG=ejW+2jqxTfAFsGhHovpgpsyvk6wUoKn5TzA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-10  5:34           ` Oliver Neukum
2012-10-10  6:00           ` Ming Lei
     [not found] ` <1349160684-6627-1-git-send-email-ming.lei-Z7WLFzj8eWMS+FvcfC7Uqw@public.gmane.org>
2012-10-02  6:51   ` [PATCH 01/12] usbnet: introduce usbnet 3 command helpers Ming Lei
2012-10-09  8:47     ` Oliver Neukum
2012-10-10  3:19       ` Ming Lei
     [not found]         ` <CACVXFVOPc0gG3UdWqJ0E+6wiwdPv5EoEgbJ0cvJ4oD4602Yp3A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-10  5:51           ` Oliver Neukum
     [not found]             ` <4085386.s0fOKMaRDP-ugxBuEnWX9yG/4A2pS7c2Q@public.gmane.org>
2012-10-10  8:17               ` Ming Lei
     [not found]                 ` <CACVXFVM7wPLXy0JL7QDnCaZFidwucTFf3t_38DuwukxWtOESHQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-10  8:39                   ` Oliver Neukum
     [not found]                     ` <1631246.gHVDWoZpLi-ugxBuEnWX9yG/4A2pS7c2Q@public.gmane.org>
2012-10-10  9:48                       ` Ming Lei
2012-10-10 10:08                         ` Oliver Neukum
2012-10-10 11:02                           ` Ming Lei
     [not found]                             ` <CACVXFVPDg89y7LyKLA0YUN7oA2rGfptfHLZhJrqBjTVPjsGdNg-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-10 11:25                               ` David Laight
     [not found]                                 ` <AE90C24D6B3A694183C094C60CF0A2F6026B702F-CgBM+Bx2aUAnGFn1LkZF6NBPR1lH4CV8@public.gmane.org>
2012-10-10 11:39                                   ` Oliver Neukum
2012-10-10 11:45                                 ` Ming Lei
2012-10-11  3:18               ` Ming Lei
     [not found]                 ` <CACVXFVMynoPm6_wYj2MD-5SvMpB7e1Wk94=XMp588rD8hU=eew-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-11  4:11                   ` Oliver Neukum
2012-10-11  8:14                     ` Ming Lei
     [not found]                       ` <CACVXFVPjx+053r_-QB=8kPCDmk3va3feN9MYdLgpf=eRWGe05A-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-11  9:05                         ` Oliver Neukum
     [not found]                           ` <1940520.W6hRn23j86-ugxBuEnWX9yG/4A2pS7c2Q@public.gmane.org>
2012-10-11 11:29                             ` Ming Lei
     [not found]                     ` <1588459.VLxBbnNMlP-ugxBuEnWX9yG/4A2pS7c2Q@public.gmane.org>
2012-10-11 14:36                       ` Alan Stern
2012-10-12  1:43                         ` Ming Lei
     [not found]                           ` <CACVXFVPdOkvKBBrshnmQv5cYVdDhi8j0V_WxNwBU9VuDsCLkXA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-12 15:18                             ` Alan Stern
     [not found]                         ` <Pine.LNX.4.44L0.1210111030570.1170-100000-IYeN2dnnYyZXsRXLowluHWD2FQJk+8+b@public.gmane.org>
2012-10-12 13:51                           ` Oliver Neukum
2012-10-12 15:17                             ` Ming Lei
     [not found]                               ` <CACVXFVOChR3ZJSyjo44AMwzzjx5URWvEe25KY2eV5evJpF9D+g-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-12 15:33                                 ` Ming Lei
     [not found]                             ` <3535515.7NRjKhCcrL-ugxBuEnWX9yG/4A2pS7c2Q@public.gmane.org>
2012-10-12 15:29                               ` Alan Stern
2012-10-15 10:04                                 ` Oliver Neukum
     [not found]                                   ` <15188898.QK0YCDZ0MW-ugxBuEnWX9yG/4A2pS7c2Q@public.gmane.org>
2012-10-15 14:27                                     ` Alan Stern
2012-10-10  5:56         ` Ming Lei
     [not found]           ` <CACVXFVM7CrxXPYzr+dfWhbbmbF+3sXq4C1q2OauvP6x_jebbYQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2012-10-10  8:24             ` Oliver Neukum
2012-10-02  6:51   ` [PATCH 02/12] usbnet: asix: apply introduced usb command APIs Ming Lei
2012-10-02  6:51   ` [PATCH 07/12] usbnet: net1080: " Ming Lei
2012-10-02  6:51   ` [PATCH 08/12] usbnet: plusb: " Ming Lei
2012-10-02  6:51   ` [PATCH 11/12] usbnet: smsc95xx: " Ming Lei
2012-10-09  8:42   ` [PATCH 00/12] usbnet: usb_control_msg cleanup Oliver Neukum

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).