summaryrefslogtreecommitdiffstats
path: root/drivers/ufs
diff options
context:
space:
mode:
authorPeter Wang <peter.wang@mediatek.com>2024-07-12 11:45:06 +0200
committerMartin K. Petersen <martin.petersen@oracle.com>2024-07-16 04:53:27 +0200
commit022587d8aec3da1d1698ddae9fb8cfe35f3ad49c (patch)
treeead63a7dc40eaa225a003fca59fe46813f972873 /drivers/ufs
parentscsi: ufs: core: Check LSDBS cap when !mcq (diff)
downloadlinux-022587d8aec3da1d1698ddae9fb8cfe35f3ad49c.tar.xz
linux-022587d8aec3da1d1698ddae9fb8cfe35f3ad49c.zip
scsi: ufs: core: Bypass quick recovery if force reset is needed
If force_reset is true, bypass quick recovery. This will shorten error recovery time. Signed-off-by: Peter Wang <peter.wang@mediatek.com> Link: https://lore.kernel.org/r/20240712094506.11284-1-peter.wang@mediatek.com Reviewed-by: Bean Huo <beanhuo@micron.com> Reviewed-by: Bart Van Assche <bvanassche@acm.org> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/ufs')
-rw-r--r--drivers/ufs/core/ufshcd.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c
index 480be64acf24..6ecaa7d8fa43 100644
--- a/drivers/ufs/core/ufshcd.c
+++ b/drivers/ufs/core/ufshcd.c
@@ -6561,7 +6561,8 @@ again:
if (ufshcd_err_handling_should_stop(hba))
goto skip_err_handling;
- if (hba->dev_quirks & UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS) {
+ if ((hba->dev_quirks & UFS_DEVICE_QUIRK_RECOVERY_FROM_DL_NAC_ERRORS) &&
+ !hba->force_reset) {
bool ret;
spin_unlock_irqrestore(hba->host->host_lock, flags);