1. 17 5月, 2013 1 次提交
  2. 30 3月, 2013 1 次提交
    • J
      usb: Make USB persist default configurable · 4f482038
      Julius Werner 提交于
      Commit 9214d1d8 set the USB persist flag as a default for all devices.
      This might be desirable for some distributions, but it certainly has its
      trade-offs... most importantly, it can significantly increase system
      resume time, because the kernel blocks on resuming (and sometimes
      resetting) USB devices before it unfreezes userspace.
      
      This patch introduces a new config option CONFIG_USB_DEFAULT_PERSIST,
      which allows distributions to make this decision on their own without
      the need to carry a custom patch or revert the kernel's setting in
      userspace.
      
      [edited the Kconfig help text a bit - gregkh]
      Signed-off-by: NJulius Werner <jwerner@chromium.org>
      Cc: Alan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      4f482038
  3. 12 1月, 2013 1 次提交
  4. 06 9月, 2012 1 次提交
  5. 21 8月, 2012 1 次提交
  6. 20 7月, 2012 2 次提交
  7. 30 4月, 2012 1 次提交
  8. 04 1月, 2012 1 次提交
  9. 15 11月, 2011 2 次提交
  10. 30 9月, 2011 1 次提交
  11. 18 9月, 2011 1 次提交
  12. 18 2月, 2011 2 次提交
  13. 17 11月, 2010 2 次提交
    • A
      USB: improve uses of usb_mark_last_busy · c08512c7
      Alan Stern 提交于
      This patch (as1434) cleans up the uses of usb_mark_last_busy() in
      usbcore.  The function will be called when a device is resumed and
      whenever a usage count is decremented.  A call that was missing from
      the hub driver is added: A hub is used whenever one of its ports gets
      suspended (this prevents hubs from suspending immediately after their
      last child).
      
      In addition, the call to disable autosuspend support for new devices
      by default is moved from usb_detect_quirks() (where it doesn't really
      belong) into usb_new_device() along with all the other runtime-PM
      initializations.  Finally, an extra pm_runtime_get_noresume() is added
      to prevent new devices from autosuspending while they are being
      registered.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      c08512c7
    • A
      USB: use the runtime-PM autosuspend implementation · fcc4a01e
      Alan Stern 提交于
      This patch (as1428) converts USB over to the new runtime-PM core
      autosuspend framework.  One slightly awkward aspect of the conversion
      is that USB devices will now have two suspend-delay attributes: the
      old power/autosuspend file and the new power/autosuspend_delay_ms
      file.  One expresses the delay time in seconds and the other in
      milliseconds, but otherwise they do the same thing.  The old attribute
      can be deprecated and then removed eventually.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      fcc4a01e
  14. 11 8月, 2010 1 次提交
  15. 27 7月, 2010 2 次提交
  16. 21 5月, 2010 1 次提交
  17. 03 3月, 2010 3 次提交
    • A
      USB: change handling of negative autosuspend delays · 5899f1e0
      Alan Stern 提交于
      This patch (as1327) changes the way negative autosuspend delays
      prevent device from autosuspending.  The current code checks for
      negative values explicitly in the autosuspend_check() routine.  The
      updated code keeps things from getting that far by using
      usb_autoresume_device() to increment the usage counter when a negative
      delay is set, and by using usb_autosuspend_device() to decrement the
      usage counter when a non-negative delay is set.
      
      This complicates the set_autosuspend() attribute method code slightly,
      but it will reduce the overall power management overhead.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      5899f1e0
    • A
      USB: implement usb_enable_autosuspend · 088f7fec
      Alan Stern 提交于
      This patch (as1326) adds usb_enable_autosuspend() and
      usb_disable_autosuspend() routines for use by drivers.  If a driver
      knows that its device can handle suspends and resumes correctly, it
      can enable autosuspend all by itself.  This is equivalent to the user
      writing "auto" to the device's power/level attribute.
      
      The implementation differs slightly from what it used to be.  Now
      autosuspend is disabled simply by doing usb_autoresume_device() (to
      increment the usage counter) and enabled by doing
      usb_autosuspend_device() (to decrement the usage counter).
      
      The set_level() attribute method is updated to use the new routines,
      and the USB Power-Management documentation is updated.
      
      The patch adds a usb_enable_autosuspend() call to the hub driver's
      probe routine, allowing the special-case code for hubs in quirks.c to
      be removed.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      088f7fec
    • O
      USB: storage: Never reset devices that will morph to an old mode · 5d398779
      Oliver Neukum 提交于
      Some devices must be switched to a new mode to fully use them.
      A reset would make them revert to the old mode. Therefore a reset
      must not be used for error handling with such devices.
      Signed-off-by: NOliver Neukum <oliver@neukum.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      5d398779
  18. 25 3月, 2009 1 次提交
  19. 17 6月, 2008 1 次提交
  20. 30 5月, 2008 1 次提交
  21. 25 4月, 2008 2 次提交
    • A
      USB: enable USB-PERSIST by default · 9214d1d8
      Alan Stern 提交于
      This patch (as1052) enables USB-PERSIST for all devices by default.
      The user won't have to remember to enable it explicitly for devices
      containing mounted filesystems.
      
      Eventually userspace tools like hal may be able to set the persist
      attribute automatically when a filesystem is mounted on a USB device.
      When that time comes this patch can be reverted, if people think it
      matters.
      
      This approach has the advantage of giving the user the ability to turn
      off USB-PERSIST for devices with mounted filesystems, rather than
      making the kernel always assume it should be on.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      9214d1d8
    • A
      USB: remove CONFIG_USB_PERSIST setting · feccc30d
      Alan Stern 提交于
      This patch (as1047) removes the USB_PERSIST Kconfig option, enabling
      it permanently.  It also prevents the power/persist attribute from
      being created for hub devices; there's no point in having it since
      USB-PERSIST is always turned on for hubs.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      feccc30d
  22. 25 3月, 2008 1 次提交
  23. 05 3月, 2008 1 次提交
  24. 22 2月, 2008 2 次提交
  25. 13 10月, 2007 1 次提交
    • A
      USB: remove USB_QUIRK_NO_AUTOSUSPEND · a691efa9
      Alan Stern 提交于
      This patch (as995) cleans up the remains of the former NO_AUTOSUSPEND
      quirk.  Since autosuspend is disabled by default, we will let
      userspace worry about which devices can safely be suspended.  Thus the
      lengthy series of quirk entries is no longer needed, and neither is
      the quirk ID.  I suppose someone might eventually run across a hub
      that can't be suspended; let's ignore the possibility for now.
      
      The patch also cleans up the hasty way in which autosuspend gets
      disabled.  Setting udev->autosuspend_delay to -1 wasn't quite right,
      because the value is always supposed to be a multiple of HZ.  It's
      better to leave the delay value alone and set autosuspend_disabled,
      which is what the quirk routine used to do.
      Signed-off-by: NAlan Stern <stern@rowland.harvard.edu>
      Cc: stable <stable@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@suse.de>
      a691efa9
  26. 13 9月, 2007 1 次提交
  27. 11 9月, 2007 5 次提交