mbox series

[0/5,v7] Keep rtsx_usb suspended when there's no card

Message ID 20181105084506.6476-1-kai.heng.feng@canonical.com (mailing list archive)
Headers show
Series Keep rtsx_usb suspended when there's no card | expand

Message

Kai-Heng Feng Nov. 5, 2018, 8:45 a.m. UTC
Hi,

This is based on Ulf's work [1] [2].

This patch series can keep rtsx_usb suspended, to save ~0.5W on Intel
platforms and ~1.5W on AMD platforms.

[1] https://patchwork.kernel.org/patch/10440583/
[2] https://patchwork.kernel.org/patch/10445725/

Kai-Heng Feng (5):
  memstick: rtsx_usb_ms: Add missing pm_runtime_disable() in probe
    function
  misc: rtsx_usb: Use USB remote wakeup signaling for card insertion
    detection
  memstick: Prevent memstick host from getting runtime suspended during
    card detection
  memstick: rtsx_usb_ms: Use ms_dev() helper
  memstick: rtsx_usb_ms: Support runtime power management

v7: Keep CONFIG_PM_SLEEP for .suspend and .resume callbacks.
    Use CONFIG_PM for .runtime_suspend and .runtime_resume callbacks.
    Reorder pm_runtime_get_noresume() before pm_runtime_enable().
    Add missing pm_runtime_disable().

v6: Move pm_runtime_get_noresume() to media_check(), to avoid
    potentially unblanced rpm count.

v5: Corretly use system suspend/resume and runtime suspend/resume callback.
    Prevent runtime callbacks get call during system suspend.

v4: Use pm_runtime_put() in memstick_check().

v3: Skip parent device check in rtsx_usb_resume_child().
    Remove dev_dbg() if it only prints function name.
    Use ms_dev() helper at more places.
    Remove const qualifier for UNIVERSAL_DEV_PM_OPS.

v2: Resend to linux-usb and LKML.

 drivers/memstick/core/memstick.c    |   3 +
 drivers/memstick/host/rtsx_usb_ms.c | 172 +++++++++++++++++-----------
 drivers/misc/cardreader/rtsx_usb.c  |   8 ++
 3 files changed, 117 insertions(+), 66 deletions(-)