lkml.org 
[lkml]   [2021]   [Mar]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH v3 0/4] scsi: add runtime PM workaround for SD cardreaders
Date
hi,

In short: there are SD cardreaders that send MEDIA_CHANGED on
(runtime) resume. We cannot use runtime PM with these devices as
I/O always fails. I'd like to discuss a way to fix this
or at least allow us to work around this problem:

For the full background, the discussion started in June 2020 here:
https://lore.kernel.org/linux-scsi/20200623111018.31954-1-martin.kepplinger@puri.sm/

I'd appreciate any feedback.

Especially: Any naming-preferences for the flags? And is the specific
device that I need this workaround for (Generic Ultra HS-SD/MMC, connected
via USB) too "generic" maybe? Not sure about what possibilities I'd have here...


revision history
----------------
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

v2:
https://lore.kernel.org/linux-scsi/20210112093329.3639-1-martin.kepplinger@puri.sm/
* move module parameter to sd
* add Documentation
v1:
https://lore.kernel.org/linux-scsi/20210111152029.28426-1-martin.kepplinger@puri.sm/T/


Martin Kepplinger (4):
scsi: add expecting_media_change flag to error path
scsi: devinfo: add new flag BLIST_MEDIA_CHANGE
scsi: sd: use expecting_media_change for BLIST_MEDIA_CHANGE devices
scsi: devinfo: add BLIST_MEDIA_CHANGE for Ultra HS-SD/MMC usb
cardreaders

drivers/scsi/scsi_devinfo.c | 1 +
drivers/scsi/scsi_error.c | 36 +++++++++++++++++++++++++++++++-----
drivers/scsi/sd.c | 23 ++++++++++++++++++++++-
include/scsi/scsi_device.h | 1 +
include/scsi/scsi_devinfo.h | 6 +++---
5 files changed, 58 insertions(+), 9 deletions(-)

--
2.30.2

\
 
 \ /
  Last update: 2021-03-28 12:28    [W:0.078 / U:0.336 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site