linux_dsm_epyc7002/drivers/scsi/ufs
Stanley Chu 2a54ad3066 scsi: ufs: Re-enable WriteBooster after device reset
[ Upstream commit bd14bf0e4a084514aa62d24d2109e0f09a93822f ]

UFS 3.1 specification mentions that the WriteBooster flags listed below
will be set to their default values, i.e. disabled, after power cycle or
any type of reset event. Thus we need to reset the flag variables kept in
struct hba to align with the device status and ensure that
WriteBooster-related functions are configured properly after device reset.

Without this fix, WriteBooster will not be enabled successfully after by
ufshcd_wb_ctrl() after device reset because hba->wb_enabled remains true.

Flags required to be reset to default values:

 - fWriteBoosterEn: hba->wb_enabled

 - fWriteBoosterBufferFlushEn: hba->wb_buf_flush_enabled

 - fWriteBoosterBufferFlushDuringHibernate: No variable mapped

Link: https://lore.kernel.org/r/20201208135635.15326-2-stanley.chu@mediatek.com
Fixes: 3d17b9b5ab ("scsi: ufs: Add write booster feature support")
Reviewed-by: Bean Huo <beanhuo@micron.com>
Signed-off-by: Stanley Chu <stanley.chu@mediatek.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2021-01-09 13:46:23 +01:00
..
cdns-pltfrm.c
Kconfig scsi: ufs: Fix 'unmet direct dependencies' config warning 2020-09-09 22:26:29 -04:00
Makefile scsi: ufs-qcom: Add Inline Crypto Engine support 2020-07-24 22:09:54 -04:00
tc-dwc-g210-pci.c
tc-dwc-g210-pltfrm.c
tc-dwc-g210.c
tc-dwc-g210.h
ti-j721e-ufs.c scsi: ufs: ti-j721e-ufs: Fix error return in ti_j721e_ufs_probe() 2020-08-17 21:48:45 -04:00
ufs_bsg.c treewide: Use fallthrough pseudo-keyword 2020-08-23 17:36:59 -05:00
ufs_bsg.h
ufs_quirks.h scsi: ufs: Introduce device quirk "DELAY_AFTER_LPM" 2020-07-30 21:10:29 -04:00
ufs-exynos.c scsi: ufs: ufs-exynos: Use devm_platform_ioremap_resource_byname() 2020-09-29 22:52:43 -04:00
ufs-exynos.h
ufs-hisi.c
ufs-hisi.h
ufs-mediatek.c scsi: ufs: Allow an error return value from ->device_reset() 2021-01-09 13:46:23 +01:00
ufs-mediatek.h scsi: ufs-mediatek: Support performance mode for inline encryption engine 2020-09-22 20:37:02 -04:00
ufs-qcom-ice.c scsi: ufs-qcom: Add Inline Crypto Engine support 2020-07-24 22:09:54 -04:00
ufs-qcom.c scsi: ufs: Allow an error return value from ->device_reset() 2021-01-09 13:46:23 +01:00
ufs-qcom.h scsi: ufs-qcom: Remove unused MSM bus scaling APIs 2020-08-20 21:41:51 -04:00
ufs-sysfs.c scsi: ufshcd: Allow specifying an Auto-Hibernate Timer value of zero 2020-09-08 21:26:15 -04:00
ufs-sysfs.h
ufs.h
ufshcd-crypto.c scsi: ufs: Fix missing brace warning for old compilers 2020-10-02 19:11:55 -04:00
ufshcd-crypto.h
ufshcd-dwc.c
ufshcd-dwc.h
ufshcd-pci.c scsi: ufs-pci: Add LTR support for Intel controllers 2020-09-15 16:11:47 -04:00
ufshcd-pltfrm.c
ufshcd-pltfrm.h
ufshcd.c scsi: ufs: Fix clkgating on/off 2020-12-30 11:53:17 +01:00
ufshcd.h scsi: ufs: Re-enable WriteBooster after device reset 2021-01-09 13:46:23 +01:00
ufshci-dwc.h
ufshci.h scsi: ufs: Handle LINERESET indication in err handler 2020-09-02 22:49:07 -04:00
unipro.h scsi: ufs: Handle LINERESET indication in err handler 2020-09-02 22:49:07 -04:00