linux/drivers/scsi/ufs
Can Guo fb276f7701 scsi: ufs: Enable block layer runtime PM for well-known logical units
Block layer RPM is enabled for the genernal UFS SCSI devices when they are
probed by their driver. However block layer RPM is not enabled for UFS
well-known SCSI devices.

As UFS SCSI devices have their corresponding BSG char devices, accessing a
BSG char device via IOCTL may send requests to its corresponding SCSI
device through its request queue. If BSG IOCTL sends a request to a
well-known SCSI device when HBA is not runtime active, due to block layer
RPM not being enabled for the well-known SCSI devices, the HBA, which is at
the top of a SCSI device's parent chain, will not be resumed.

This change enables block layer RPM for the well-known SCSI devices so that
block layer can handle RPM for the well-known SCSI devices just like for
the general SCSI devices.

Reviewed-by: Avri Altman <avri.altman@wdc.com>
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Can Guo <cang@codeaurora.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2020-03-26 22:30:44 -04:00
..
cdns-pltfrm.c scsi: ufs: introduce common function to disable host TX LCC 2020-02-12 19:27:16 -05:00
Kconfig scsi: docs: convert ufs.txt to ReST 2020-03-11 23:08:03 -04:00
Makefile scsi: ufs: Add driver for TI wrapper for Cadence UFS IP 2019-11-12 22:21:33 -05:00
tc-dwc-g210-pci.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
tc-dwc-g210-pltfrm.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
tc-dwc-g210.c treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
tc-dwc-g210.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ti-j721e-ufs.c scsi: ufs: Add driver for TI wrapper for Cadence UFS IP 2019-11-12 22:21:33 -05:00
ufs_bsg.c scsi: ufs: Give an unique ID to each ufs-bsg 2019-12-09 18:46:18 -05:00
ufs_bsg.h
ufs_quirks.h scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices 2020-02-28 20:40:01 -05:00
ufs-hisi.c scsi: ufs: introduce common function to disable host TX LCC 2020-02-12 19:27:16 -05:00
ufs-hisi.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 471 2019-06-19 17:09:11 +02:00
ufs-mediatek.c scsi: ufs-mediatek: customize the delay for enabling host 2020-03-26 22:07:16 -04:00
ufs-mediatek.h scsi: ufs-mediatek: customize the delay for enabling host 2020-03-26 22:07:16 -04:00
ufs-qcom.c scsi: ufs-qcom: Override devfreq parameters 2020-03-26 22:18:14 -04:00
ufs-qcom.h scsi: ufs-qcom: Add reset control support for host controller 2019-11-18 23:15:50 -05:00
ufs-sysfs.c scsi: ufs: Resume ufs host before accessing ufs device 2020-03-26 22:11:01 -04:00
ufs-sysfs.h scsi: ufs: sysfs: Use the correct style for SPDX License Identifier 2020-01-02 21:57:44 -05:00
ufs.h scsi: ufs: Add dev ref clock gating wait time support 2020-02-12 19:42:37 -05:00
ufshcd-dwc.c scsi: ufs: make array setup_attrs static const, makes object smaller 2019-09-30 22:47:21 -04:00
ufshcd-dwc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ufshcd-pci.c scsi: ufs: introduce common function to disable host TX LCC 2020-02-12 19:27:16 -05:00
ufshcd-pltfrm.c scsi: ufs: ufshcd: Remove dev_err() on platform_get_irq() failure 2019-11-12 22:21:34 -05:00
ufshcd-pltfrm.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 284 2019-06-05 17:36:37 +02:00
ufshcd.c scsi: ufs: Enable block layer runtime PM for well-known logical units 2020-03-26 22:30:44 -04:00
ufshcd.h scsi: ufshcd: Let vendor override devfreq parameters 2020-03-26 22:18:13 -04:00
ufshci-dwc.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 500 2019-06-19 17:09:55 +02:00
ufshci.h scsi: ufs: Fix irq return code 2019-11-19 21:37:09 -05:00
unipro.h scsi: ufs: Select INITIAL ADAPT type for HS Gear4 2020-02-12 19:34:22 -05:00