An error occurred fetching the project authors.
  1. 20 Jan, 2004 1 commit
    • Alan Stern's avatar
      [PATCH] USB Storage: Notify the SCSI layer about device resets · 27ea252f
      Alan Stern authored
      According to James Bottomley, we need to notify the SCSI midlayer whenever
      we issue a driver-initiated device reset.  That can happen in several
      places, most notably following a transport error.  This patch adds
      code to the reset routine to take care of it.  (Notifying about resets
      requested by the midlayer itself is unnecessary but harmless.)
      
      Alan Stern
      
      On 15 Dec 2003, James Bottomley wrote:
      
      > It looks like the driver sent a reset to the device on its own without
      > reporting it to the mid-layer.
      >
      > There's an expecting_cc_ua flag in the scsi_device.  It gets set on
      > error recovery actions, or if the device does something to detect or
      > trigger a reset (that's the scsi_report_device_reset() and
      > scsi_report_bus_reset() API's).
      >
      > James
      27ea252f
  2. 16 Jan, 2004 2 commits
    • Matthew Dharm's avatar
      [PATCH] USB Storage: add sysfs info attribute · 8d4f1c82
      Matthew Dharm authored
      This patch adds a sysfs attribute to the usb-storage SCSI devices.  This
      attribute (read-only) is basically a clone of the information available in
      /proc/scsi/scsi -- since that interface is going away, adding a new sysfs
      attribute seemed like a good idea.
      8d4f1c82
    • Alan Stern's avatar
      [PATCH] USB Storage: Old patches (as129 and as141) · c520cb25
      Alan Stern authored
      There's a couple of old patches floating around still that you might want
      to apply.  I have reproduced them below.
      
      as129 handles the situation where a command error causes us to do a device
      reset, but the SCSI layer times out and aborts the command during the
      reset delay.  It clears a flag that otherwise will prevent us from sending
      the clear-halt messages following the reset.
      
      as141 is the DMA buffer alignment patch.  You asked me to remind you about
      it eventually.  There shouldn't be any harm at all in applying it without
      waiting for the corresponding SCSI part of the patch to be applied.
      Without that other part, this will essentially do nothing.
      
      Alan Stern
      c520cb25
  3. 12 Dec, 2003 1 commit
    • Matthew Dharm's avatar
      [PATCH] USB: don't send any MODE SENSE commands to usb mass storage devices · 6a9f4367
      Matthew Dharm authored
      This patch basically eliminates the use of MODE_SENSE or MODE_SENSE_10 for
      direct-access USB storage devices.  That $&%*! command has caused us more
      trouble than all the others combined, and after more than a year we still
      don't have a good way of handling/using them.
      
      I constantly get complaints about devices which don't work because of the
      way 2.5/6 uses MODE_SENSE and MODE_SENSE_10 -- this patch will greatly
      increase compatiblity with devices.  As with the patch to limit transfer
      sizes, I'd like to see this applied as soon as possible.
      
      Matt
      
      > ----- Forwarded message from Patrick Mansfield <patmans@us.ibm.com> -----
      >
      > Date: Thu, 20 Nov 2003 08:28:27 -0800
      > From: Patrick Mansfield <patmans@us.ibm.com>
      > Subject: [PATCH] don't send any MODE SENSE commands to usb mass storage devices
      > To: mdharm-scsi@one-eyed-alien.net
      
      Matthew -
      
      Is this patch in your queue? I don't see it in Linus' tree yet.
      
      Don't send any MODE SENSE commands to usb mass storage devices.
      6a9f4367
  4. 21 Nov, 2003 1 commit
  5. 16 Oct, 2003 1 commit
    • Patrick Mansfield's avatar
      [PATCH] SCSI: limit mode sense usage · 92933518
      Patrick Mansfield authored
      Re-roll of the patch against 2.6.0-test6 to allow overriding or setting of
      mode sense related flags, includes Alan Stern's as95 patch minus his
      scsiglue.c changes.
      
      Moves scsi_devinfo.h for use outside of drivers/scsi, and adds three new
      devinfo flags:
      
      	BLIST_MS_SKIP_PAGE_08
      	BLIST_MS_SKIP_PAGE_3F
      	BLIST_USE_10_BYTE_MS
      
      Adds a per host template flags, and use of it in scsiglue.c. The per host
      value can be overridden by a devinfo entry, the patch does not allow
      scsi_default_dev_flags to override default host values.
      
      USB mass storage and removable media (for testing mode page 3f use) were
      not tested, if you have a USB storage device that still chokes on mode
      sense 3f please give this a spin.
      
       drivers/scsi/scsi_devinfo.c    |   15 +++++++++++----
       drivers/scsi/scsi_devinfo.h    |   17 -----------------
       drivers/scsi/scsi_priv.h       |    3 ++-
       drivers/scsi/scsi_scan.c       |   17 +++++++++++++----
       drivers/scsi/sd.c              |    9 +++++++++
       drivers/usb/storage/scsiglue.c |    8 ++++----
       include/scsi/scsi_device.h     |    2 ++
       include/scsi/scsi_devinfo.h    |   22 ++++++++++++++++++++++
       include/scsi/scsi_host.h       |    6 ++++++
       9 files changed, 69 insertions(+), 30 deletions(-)
      92933518
  6. 14 Jul, 2003 1 commit
    • Matthew Dharm's avatar
      [PATCH] USB: remove now-dead mode-translation code · 5f366a64
      Matthew Dharm authored
      This patch removes all of the mode-translation logic.  It's no longer
      needed, as the upper-level drivers now all issue the proper 10-byte
      commands.  This is a large patch, but what it's doing is removing a great
      deal of unneeded code -- about 650+ lines removed, according to diffstat.
      
      Those of you who are having some trouble getting your DVD-RAMs detected
      properly should have all your problems solved by an upcoming patch from the
      SCSI folks.  It may look like that problem is related to this patch, but it
      isn't -- it's a side-effect of another SCSI patch to consolidate code.
      
      Special thanks to James Bottomley for being patient enough to work with me
      on these issues on the SCSI layer.
      
      This, BTW, makes US_FL_MODE_XLATE a NOP.  The symbol is kept for the
      purpose of allowing unusual_devs.h to be consistent between 2.4 and 2.5
      
      There are still a few places where more code could (potentially) be
      removed.  I need to mull over the UFI specification to be sure, tho.
      5f366a64
  7. 30 Jun, 2003 1 commit
  8. 16 Jun, 2003 2 commits
    • Matthew Dharm's avatar
      [PATCH] USB storage: more cleanups · c29296ae
      Matthew Dharm authored
      This patch (a) removes dead code, (b) renames some static functions with
      names that are more apropriate for static functions, and (c) implements a
      slave_configure() function.
      
      With the patch I just sent to Linus (et al.) to fix the SCSI core to allow
      slave_configure() to tweak (meaningfully) the two variables I need to set,
      we'll be able to remove US_FL_MODE_XLATE.
      
      (Well, actually, we also need to fix sr.c to respect the use_10_for_ms
      flag, but that should be easy once the rest is done.)
      c29296ae
    • Matthew Dharm's avatar
      [PATCH] USB storage: cleanups · 169671a9
      Matthew Dharm authored
      Some minor cleanups.  First, some locking in the bus-reset.  Next, we move
      current_sg into struct us_data (why make more memory allocation issues for
      ourselves?).  Next, we change sm_state into a normal variable, since it
      shouldn't require atomic_t anytmore.  Finally, we remove some references to
      a couple of flags that don't do anything anymore.
      
      # Fix device locking during the bus-reset routine.
      #
      # Embed current_sg in struct us_data.
      #
      # Make us->sm_state a regular int instead of an atomic_t.
      #
      # Remove a couple of references to the START_STOP and IGNORE_SER
      # flag bits.
      169671a9
  9. 11 Jun, 2003 1 commit
    • Christoph Hellwig's avatar
      [PATCH] kill of ->command · e59aa73e
      Christoph Hellwig authored
      It's unused now.  Also kill off the stupid = NULL initializations
      in usb-storage that made this not compile the first time..
      e59aa73e
  10. 06 Jun, 2003 1 commit
  11. 01 Jun, 2003 1 commit
    • Matthew Dharm's avatar
      [PATCH] USB: usb-storage: usb_stor_control_msg() and stuff · ac01ad71
      Matthew Dharm authored
      This patch replaces usb_control_msg() with usb_stor_control_msg() everywhere,
      which allows better abort/disconnect processing.
      
      Some comments are fixed-up.
      
      The GetMaxLUN function is moved later so URBs are initialized (now that it
      uses the new control_msg() ).
      
      There is also some locking cleanup during reset.
      ac01ad71
  12. 29 May, 2003 1 commit
    • Matthew Dharm's avatar
      [PATCH] USB: storage: abort and disconnect handling. · 257711d2
      Matthew Dharm authored
      This patch re-organizes abort handling and enhances disconnect handling.
      
      Not only do we keep track of the state (ABORTING, IDLE, etc.), but during
      an abort we now introduce the idea of 'okay to send' or not.  The idea is
      that we can now implement reset-after-abort properly.
      
      We also track if we're disconnecting, and use that data to determine if we
      can submit URBs or not.  Which means we can now disconnect during an abort.
      
      This patch is from Alan Stern.
      257711d2
  13. 19 May, 2003 1 commit
  14. 07 Apr, 2003 2 commits
  15. 25 Mar, 2003 3 commits
    • Greg Kroah-Hartman's avatar
      16964d68
    • Oliver Neukum's avatar
      [PATCH] USB: storage: add logging to reset · 5e828ac3
      Oliver Neukum authored
        - add logging to reset
      5e828ac3
    • Oliver Neukum's avatar
      [PATCH] USB: storage device reset cleanup · d4da2538
      Oliver Neukum authored
      > In the absence of far-reaching changes to the API, my suggestion is to
      > have the emulated SCSI bus reset code in usb-storage do nothing but log an
      > error message and return an error code.  For the time being, considering
      > how infrequently these resets occur, we can simply rely on the user
      > unplugging the USB cable and putting it back in or cycling the power to
      > the drive.  (Yes, there are situations where these resets crop up
      > regularly -- but they are the result of some other incompatibility that a
      > device reset won't fix anyway.)
      
      OK, as the consensus seems to be that in the short run changing things
      for a full reset implementation is not worth it, here's an implementation
      that does the best we can do without.
      It issues a reset only if we can be sure that there are no other users
      of the device in question.
      As the version currently in the storage driver is broken anyway,
      this is a definite improvement. And it addresses the need of exporting
      the probe/remove functions for storage's sake.
      d4da2538
  16. 04 Feb, 2003 4 commits
    • Linus Torvalds's avatar
      f5e88169
    • Matthew Dharm's avatar
      [PATCH] USB usb-storage: host a host refcount a little bit longer · 435c8eb5
      Matthew Dharm authored
      This patch makes us hold the host reference count a little bit longer in
      the /proc interface code.  We were releasing it too early before.
      435c8eb5
    • Matthew Dharm's avatar
      [PATCH] usb-storage: remove US_FL_DEV_ATTACHED · 196ef4e6
      Matthew Dharm authored
      This patch removes the US_FL_DEV_ATTACHED flag, which is now rendered
      obsolete by the new hotplug system.
      
      It also adds a comment or two about areas of code that need to be
      re-examined.
      196ef4e6
    • Matthew Dharm's avatar
      [PATCH] usb-storage: move to SCSI hotplugging · 82469dfd
      Matthew Dharm authored
      The attached patch is my first implementation of SCSI hotplugging.
      
      It's only been tested that it compiles, as I can't get the current
      linux-2.5 tree from linuxusb to boot.  It dies _very_ early.  Greg, I'm not
      sure if you'll want to apply this.  Linus seemed to want this very much,
      and it is 2.5.x... I say go for it, but I can understand if you have
      reservations.
      
      I would definately like to see this tested by anyone who can get a kernel
      to boot.
      
      This patch is quite large.  Lots of things had to be changed.  Among them:
      
      (o) The proc interface now uses the host number to look up the SCSI host
          structure, and then finds the usb-storage structure from that.
      (o) The SCSI interface has been changed.  The code flow is now much
          clearer, as more work is done from the USB probe/detach functions than
          from auxillary functions.
      (o) Names have been changed for newer conventions
      (o) GUIDs have been removed
      (o) The linked-list of devices has been removed, and it's associated
          semaphore
      (o) All code dealing with re-attaching a device to it's old association has
          been removed
      (o) Some spaces changed to tabs
      (o) usb-storage now takes one directory under /proc/scsi instead of
          one per virtual-HBA
      (o) All control threads now have the same name.  This could be changed back
          to the old behavior, if enough people want it.
      
      Known problems:
      (o) Testing, testing, testing
      (o) More dead code needs to be cut
      (o) It's a unclear how a LLD is supposed to cut off the flow of
          commands, so that the unregister() call always succeeds.  SCSI folks
          need to work on this.
      (o) Probing needs to be broken down into smaller functions, probably.
      82469dfd
  17. 13 Jan, 2003 3 commits
    • Greg Kroah-Hartman's avatar
      [PATCH] USB: put the usb storage's SCSI device in the proper place in sysfs. · 9fb6dc82
      Greg Kroah-Hartman authored
      Also makes usb_ifnum_to_if() a public function
      9fb6dc82
    • Patrick Mansfield's avatar
      [PATCH] USB storage sysfs fix · 0a3d3128
      Patrick Mansfield authored
      It looks like there is a missing scsi_set_device() call in scsiglue.c,
      (similiar to what happens if we handled NULL dev pointer in scis_add_host)
      so all the usb scsi devices end up under /sysfs/devices.
      
      I don't have any usb mass storage devices, this patch against 2.5 bk
      compiles but otherwise is not tested. It should put the usb-scsi mass
      storage devices below the usb sysfs dev (I assume in your case under
      /sysfs/devices/pci0/00:07.2/usb1/1-2/1-2.4/1-2.4.4).
      0a3d3128
    • Luben Tuikov's avatar
      [SCSI] Move cmd->host to cmd->device->host · a6eed7cd
      Luben Tuikov authored
      his patch makes the conversion from scsi cmd->host to scsi
      cmd->device->host for drivers/scsi/*, drivers/usb/storage/*,
      drivers/ieee1394/*, drivers/message/fusion/* .
      a6eed7cd
  18. 11 Nov, 2002 1 commit
  19. 29 Oct, 2002 1 commit
    • David Brownell's avatar
      [PATCH] USB: clean up usb structures some more · 63bc762f
      David Brownell authored
      This patch splits up the usb structures to have two structs,
      "usb_XXX_descriptor" with just the descriptor, and "usb_host_XXX" (or
      something similar) to wrap it and add the "extra" pointers plus the
      array of related descriptors that the host parsed during enumeration.
      (2 or 3 words extra in each"usb_host_XXX".)  This further matches the
      "on the wire" data and enables the gadget drivers to share the same
      header file.
      
      Covers all the linux/drivers/usb/* and linux/sound/usb/* stuff, but
      not a handful of other drivers (bluetooth, iforce, hisax, irda) that
      are out of the usb tree and will likely be affected.
      63bc762f
  20. 16 Sep, 2002 2 commits
  21. 21 Aug, 2002 1 commit
    • Matthew Dharm's avatar
      [PATCH] PATCH: fix devices which don't support EVPD · 3cc8f6c9
      Matthew Dharm authored
      Apparently, some new 2.5 scsi code tries to get the vital product data
      pages using the INQUIRY command.  Unfortunately, most USB devices do not
      support this.
      
      The following patch intercepts all EVPD requests and responds with the
      per-spec response of "Illegal Request: Invalid field in CDB".
      3cc8f6c9
  22. 14 Aug, 2002 1 commit
  23. 05 Aug, 2002 1 commit
  24. 19 Jul, 2002 1 commit
    • Rusty Russell's avatar
      [PATCH] drivers/usb/* designated initializer rework · cfe2b798
      Rusty Russell authored
      Name: Designated initializers for drivers/usb
      Author: Rusty Russell
      Status: Trivial
      
      D: The old form of designated initializers are obsolete: we need to
      D: replace them with the ISO C forms before 2.6.  Gcc has always supported
      D: both forms anyway.
      cfe2b798
  25. 07 Jul, 2002 3 commits
  26. 18 Jun, 2002 1 commit
  27. 29 May, 2002 1 commit