Subject: [BK PATCH] USB changes for 2.5.24
From: Greg KH <[email-masked]>
To: [email-masked]
Cc: [email-masked]

Pull from:  http://linuxusb.bkbits.net/linus-2.5

 Documentation/DocBook/Makefile        |    1 
 Documentation/DocBook/kernel-api.tmpl |    1 
 drivers/usb/class/bluetty.c           |    5 
 drivers/usb/class/printer.c           |   23 --
 drivers/usb/core/Makefile             |    6 
 drivers/usb/core/file.c               |  182 ++++++++++++++++++++++
 drivers/usb/core/inode.c              |   19 --
 drivers/usb/core/usb.c                |  233 ++--------------------------
 drivers/usb/host/Config.help          |   43 -----
 drivers/usb/host/Config.in            |   20 --
 drivers/usb/host/ohci-dbg.c           |    2 
 drivers/usb/host/ohci-hcd.c           |   12 +
 drivers/usb/host/uhci-hcd.c           |   38 ----
 drivers/usb/host/usb-uhci-hcd.c       |   18 --
 drivers/usb/host/usb-uhci-q.c         |   58 -------
 drivers/usb/image/mdc800.c            |    9 -
 drivers/usb/image/scanner.c           |   19 --
 drivers/usb/input/hiddev.c            |   22 --
 drivers/usb/media/dabusb.c            |   16 -
 drivers/usb/misc/auerswald.c          |   25 ---
 drivers/usb/misc/brlvger.c            |   22 --
 drivers/usb/misc/rio500.c             |   18 +-
 drivers/usb/net/pegasus.c             |  279 +++++++++++++++++++---------------
 drivers/usb/net/pegasus.h             |   17 --
 drivers/usb/net/rtl8150.c             |   49 ++---
 drivers/usb/storage/transport.c       |  101 +++---------
 drivers/usb/storage/usb.c             |  253 ++++++++++++++----------------
 drivers/usb/storage/usb.h             |    1 
 drivers/usb/usb-skeleton.c            |   29 +--
 include/linux/usb.h                   |   23 --
 30 files changed, 637 insertions(+), 907 deletions(-)
----

[email-masked], 2002-07-05 14:38:16-07:00, [email-masked]
  USB: bluetty.c allocation bug fix
  
  In usb_bluetooth_probe, the transfer buffers for the write pool urbs
  are allocated with size 0, because bluetooth->bulk_out_buffer_size isn't set
  until after the loop.

 drivers/usb/class/bluetty.c |    5 ++---
 1 files changed, 2 insertions(+), 3 deletions(-)
----

[email-masked], 2002-07-05 14:33:17-07:00, [email-masked]
  USB: Fixups due to the changes in struct usb_device for file_operations and minor number handling

 drivers/usb/class/printer.c  |   23 +++++------------------
 drivers/usb/image/mdc800.c   |    9 ++++-----
 drivers/usb/image/scanner.c  |   19 +++++--------------
 drivers/usb/input/hiddev.c   |   22 +++++++---------------
 drivers/usb/media/dabusb.c   |   16 ++++------------
 drivers/usb/misc/auerswald.c |   25 +++++--------------------
 drivers/usb/misc/brlvger.c   |   22 ++++------------------
 drivers/usb/misc/rio500.c    |   18 ++++++++++++++----
 drivers/usb/usb-skeleton.c   |   29 +++++++++--------------------
 9 files changed, 57 insertions(+), 126 deletions(-)
----

[email-masked], 2002-07-05 14:31:37-07:00, [email-masked]
  USB: added drivers/usb/core/file.c to the kernel-api documentation

 Documentation/DocBook/Makefile        |    1 +
 Documentation/DocBook/kernel-api.tmpl |    1 +
 2 files changed, 2 insertions(+)
----

[email-masked], 2002-07-05 14:30:41-07:00, [email-masked]
  USB: removed file ops from usb device structure
  Moved the file ops and minor number stuff out of the usb structure,
  Now usb_register_dev() and usb_deregister_dev() must be called if 
  you want to use the USB major number.

 drivers/usb/core/Makefile |    6 -
 drivers/usb/core/file.c   |  182 +++++++++++++++++++++++++++++++++++
 drivers/usb/core/inode.c  |   19 ---
 drivers/usb/core/usb.c    |  233 +++-------------------------------------------
 include/linux/usb.h       |   23 ----
 5 files changed, 208 insertions(+), 255 deletions(-)
----

[email-masked], 2002-07-04 23:46:47-07:00, [email-masked]
  [PATCH] pegasus & rtl8150
  
  I chose a little bit more restrictive license for my drivers.
  Rx skb pool introduced in pegasus driver and the pool locking in rtl8150
  is refined.

 drivers/usb/net/pegasus.c |  279 ++++++++++++++++++++++++++--------------------
 drivers/usb/net/pegasus.h |   17 --
 drivers/usb/net/rtl8150.c |   49 +++-----
 3 files changed, 188 insertions(+), 157 deletions(-)
----

[email-masked], 2002-07-04 18:21:24-07:00, [email-masked]
  [PATCH] usb-storage: remove timer
  
  This removes the timer usage in usb-storage.  This cleans up quite a bit
  of the state machine and eliminates quite a few potential races.
  
  Initialization commands and other non-data-path mechanisms use the USB core
  timeout mechanism.  Anything in the data path uses the SCSI mid-layer
  mechanism.

 drivers/usb/storage/transport.c |   84 ++++++++++------------------------------
 1 files changed, 21 insertions(+), 63 deletions(-)
----

[email-masked], 2002-07-04 18:21:18-07:00, [email-masked]
  [PATCH] usb-storage: Code consolidation of error paths
  
  This patch consolidates quite of bit of code in the control thread to
  place all the cleanup/error handling into one place.

 drivers/usb/storage/usb.c |   68 +++++++++++++++-------------------------------
 1 files changed, 23 insertions(+), 45 deletions(-)
----

[email-masked], 2002-07-04 18:21:08-07:00, [email-masked]
  [PATCH] usb-storage: code cleanup, small fixes
  
  This patch consolidates quite a bit of code for allocation/deallocation of
  URBs, and removes a kmalloc() from a command path.

 drivers/usb/storage/transport.c |   17 +--
 drivers/usb/storage/usb.c       |  185 ++++++++++++++++++++--------------------
 drivers/usb/storage/usb.h       |    1 
 3 files changed, 104 insertions(+), 99 deletions(-)
----

[email-masked], 2002-07-04 11:04:13-07:00, [email-masked]
  USB:  removed unused Config.help entries from the host controller file.

 drivers/usb/host/Config.help |   43 ++-----------------------------------------
 1 files changed, 2 insertions(+), 41 deletions(-)
----

[email-masked], 2002-07-04 11:03:26-07:00, [email-masked]
  USB:  picked a uhci driver to go forward with.
  
  Removed usb-uhci-hcd.o from the list of UHCI drivers.
  This allowed the logic to be cleaned up.
  Removed CONFIG_EXPERIMENTAL dependancy, as it's no longer needed.

 drivers/usb/host/Config.in |   20 +++-----------------
 1 files changed, 3 insertions(+), 17 deletions(-)
----

[email-masked], 2002-06-21 15:12:01-07:00, [email-masked]
  [PATCH] Re: [linux-usb-devel] unending timeouts (patch for 2.5.22 oops)
  
  Ah, so both of the "hcd-ized" UHCI drivers have a common bug:
  they've got logic to look at the USB_ASYNC_UNLINK flag and
  block unless it's clear ... but the hcd framework is already
  handling the synchronous behavior, so that's wrong.
  
  Try to repeat that with the patch I've attached, which rips
  out that duplicated code ... and so should at least get rid of
  that oops, even if it doesn't entirely fix the timeout issue.
  
  (Or: try with either the OHCI driver, or with the EHCI driver
  through a USB 2.0 hub, if you have appropriate hardware.)
  
  - Dave
  
  p.s. Disclaimer about this patch:  all it does is rip out
        code and make it compile without warnings, but I've
        not tested it otherwise.  There's a possiblity it'll
        uncover latent issues on the other code path, but then
        that's exactly why we only want one unlink code path
        inside the HCDs!  So Greg, please merge anyway ...

 drivers/usb/host/uhci-hcd.c     |   38 +++++---------------------
 drivers/usb/host/usb-uhci-hcd.c |   18 ++++--------
 drivers/usb/host/usb-uhci-q.c   |   58 ----------------------------------------
 3 files changed, 15 insertions(+), 99 deletions(-)
----

[email-masked], 2002-06-21 15:11:45-07:00, [email-masked]
  [PATCH] ohci-hcd cardbus unplug
  
  This is the 2.5 version of that 2.4 patch I sent recently,
  which makes the OHCI driver behave usably on at least
  some cardbus systems when the card is just ejected without
  a clean shutdown.

 drivers/usb/host/ohci-dbg.c |    2 ++
 drivers/usb/host/ohci-hcd.c |   12 ++++++++++--
 2 files changed, 12 insertions(+), 2 deletions(-)