linux/drivers/scsi/ufs
Jinyoung Choi f681d1078d scsi: ufs: Add checking lifetime attribute for WriteBooster
Because WB performs writes in SLC mode, it is not possible to use
WriteBooster indefinitely. Vendors can set a lifetime limit in the device.
If the lifetime exceeds this limit, the device ican disable the WB feature.

The feature is defined in the "bWriteBoosterBufferLifeTimeEst (IDN = 1E)"
attribute.

With lifetime exceeding the limit value, the current driver continuously
performs the following query:

	- Write Flag: WB_ENABLE / DISABLE
	- Read attr: Available Buffer Size
	- Read attr: Current Buffer Size

This patch recognizes that WriteBooster is no longer supported by the
device, and prevents unnecessary queries.

Link: https://lore.kernel.org/r/1891546521.01643252701746.JavaMail.epsvc@epcpadp3
Reviewed-by: Asutosh Das <quic_asutoshd@quicinc.com>
Acked-by: Avri Altman <avri.altman@wdc.com>
Signed-off-by: Jinyoung Choi <j-young.choi@samsung.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2022-01-31 16:44:57 -05:00
..
cdns-pltfrm.c scsi: ufs: Reduce power management code duplication 2021-08-02 21:43:57 -04:00
Kconfig scsi: ufs: Fix double space in SCSI_UFS_HWMON description 2021-11-18 22:26:59 -05:00
Makefile scsi: ufs: core: Probe for temperature notification support 2021-09-22 00:07:42 -04:00
tc-dwc-g210-pci.c scsi: ufs: Fix race conditions related to driver data 2021-12-06 22:30:33 -05:00
tc-dwc-g210-pltfrm.c scsi: ufs: Reduce power management code duplication 2021-08-02 21:43:57 -04:00
tc-dwc-g210.c
tc-dwc-g210.h
ti-j721e-ufs.c
ufs_bsg.c scsi: ufs: core: Enable power management for wlun 2021-05-10 22:28:20 -04:00
ufs_bsg.h
ufs_quirks.h scsi: ufs: core: Add L2P entry swap quirk for Micron UFS 2021-08-05 23:21:08 -04:00
ufs-debugfs.c scsi: ufs: core: Add debugfs attributes for triggering the UFS EH 2021-10-26 23:24:50 -04:00
ufs-debugfs.h scsi: ufs: core: Enable power management for wlun 2021-05-10 22:28:20 -04:00
ufs-exynos.c scsi: ufs: Rename a function argument 2021-12-06 22:30:32 -05:00
ufs-exynos.h scsi: ufs: ufs-exynos: Support ExynosAuto v9 UFS 2021-10-27 23:10:12 -04:00
ufs-fault-injection.c scsi: ufs: Add fault injection support 2021-08-03 07:27:42 -04:00
ufs-fault-injection.h scsi: ufs: Add fault injection support 2021-08-03 07:27:42 -04:00
ufs-hisi.c scsi: ufs: Let devices remain runtime suspended during system suspend 2021-11-29 22:37:04 -05:00
ufs-hisi.h scsi: ufs: ufs-hisi: Use device parameter initialization function 2020-11-17 01:03:18 -05:00
ufs-hwmon.c scsi: ufs: core: Add temperature notification exception handling 2021-09-22 00:07:42 -04:00
ufs-mediatek-trace.h scsi: ufs-mediatek: Use correct path to fix compile error 2020-12-09 12:00:26 -05:00
ufs-mediatek.c scsi: ufs: ufs-mediatek: Fix error checking in ufs_mtk_init_va09_pwr_ctrl() 2022-01-10 10:56:58 -05:00
ufs-mediatek.h scsi: ufs: ufs-mediatek: Introduce default delay for reference clock 2021-10-18 22:38:35 -04:00
ufs-qcom-ice.c
ufs-qcom.c scsi: ufs: mediatek: Support vops pre suspend to disable auto-hibern8 2021-10-12 13:41:01 -04:00
ufs-qcom.h scsi: ufs: ufs-qcom: Use device parameter initialization function 2020-11-17 01:03:18 -05:00
ufs-sysfs.c scsi: ufs: core: Add lu_enable sysfs node 2021-08-05 23:21:13 -04:00
ufs-sysfs.h
ufs.h scsi: ufs: Add checking lifetime attribute for WriteBooster 2022-01-31 16:44:57 -05:00
ufshcd-crypto.c blk-crypto: rename blk_keyslot_manager to blk_crypto_profile 2021-10-21 10:49:32 -06:00
ufshcd-crypto.h blk-crypto: rename blk_keyslot_manager to blk_crypto_profile 2021-10-21 10:49:32 -06:00
ufshcd-dwc.c scsi: ufs-dwc: Use phy_initialization helper 2020-12-07 18:00:06 -05:00
ufshcd-dwc.h
ufshcd-pci.c Merge branch '5.16/scsi-fixes' into 5.17/scsi-staging 2021-12-16 22:38:19 -05:00
ufshcd-pltfrm.c scsi: ufs: Fix race conditions related to driver data 2021-12-06 22:30:33 -05:00
ufshcd-pltfrm.h scsi: ufs: Reduce power management code duplication 2021-08-02 21:43:57 -04:00
ufshcd.c scsi: ufs: Add checking lifetime attribute for WriteBooster 2022-01-31 16:44:57 -05:00
ufshcd.h scsi: ufs: Optimize the command queueing code 2021-12-06 22:30:34 -05:00
ufshci-dwc.h
ufshci.h scsi: ufs: core: Micro-optimize ufshcd_map_sg() 2021-10-26 23:24:50 -04:00
ufshpb.c SCSI misc on 20220113 2022-01-14 14:37:34 +01:00
ufshpb.h scsi: ufs: ufshpb: Properly handle max-single-cmd 2021-11-03 21:51:56 -04:00
unipro.h scsi: ufs: Add enums for UniPro version higher than 1.6 2020-11-10 23:03:18 -05:00