2021-06-28 13:40:33

by Martin Kepplinger

[permalink] [raw]
Subject: [PATCH v4 0/3] fix runtime PM for SD card readers

hi,

(According to Alan Stern, "as far as I know, all") SD card readers send
MEDIA_CHANGED unit attention notification on (runtime) resume. We cannot
use runtime PM with these devices as I/O always fails in that case.

This fixes runtime PM for SD cardreaders. I'd appreciate any feedback.

To enable runtime PM for an SD cardreader number 0:0:0:0, do:

echo 0 > /sys/module/block/parameters/events_dfl_poll_msecs
echo 1000 > /sys/bus/scsi/devices/0:0:0:0/power/autosuspend_delay_ms
echo auto > /sys/bus/scsi/devices/0:0:0:0/power/control

thank you,
martin

revision history
----------------
v4: (thank you Bart and Alan)
* send SENSE REQUEST in sd instead of adding a global scsi error flag.

v3: (thank you Bart)
* create a new BLIST entry to mark affected devices instead of the
sysfs module parameter for sd only. still, only sd implements handling
the flag for now.
* cc linux-pm list
https://lore.kernel.org/linux-scsi/[email protected]/

v2:
https://lore.kernel.org/linux-scsi/[email protected]/
* move module parameter to sd
* add Documentation
v1:
https://lore.kernel.org/linux-scsi/[email protected]/T/
For the full background, the discussion started in June 2020 here:
https://lore.kernel.org/linux-scsi/[email protected]/


Martin Kepplinger (3):
scsi: devinfo: add new flag BLIST_MEDIA_CHANGE
scsi: sd: send REQUEST SENSE for BLIST_MEDIA_CHANGE devices in
runtime_resume()
scsi: devinfo: add BLIST_MEDIA_CHANGE for Ultra HS-SD/MMC usb
cardreaders

drivers/scsi/scsi_devinfo.c | 1 +
drivers/scsi/sd.c | 37 ++++++++++++++++++++++++++++++++++++-
include/scsi/scsi_devinfo.h | 6 +++---
3 files changed, 40 insertions(+), 4 deletions(-)

--
2.30.2