* [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk for WDC UFS devices
@ 2020-02-24 4:09 Can Guo
2020-02-24 4:09 ` [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance Can Guo
` (2 more replies)
0 siblings, 3 replies; 8+ messages in thread
From: Can Guo @ 2020-02-24 4:09 UTC (permalink / raw)
To: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn, cang
Changes since v1:
- Instead of using this quirk for all Soc vendors, enable this quirk only for QCOM's platforms.
Western Digital UFS devices require host PA_TACTIVATE to be lower than
device PA_TACTIVATE, otherwise it may get stuck during hibern8 sequence.
Can Guo (2):
scsi: ufs: Allow vendor apply device quirks in advance
scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices
drivers/scsi/ufs/ufs-qcom.c | 3 +++
drivers/scsi/ufs/ufs_quirks.h | 1 +
drivers/scsi/ufs/ufshcd.c | 4 ++--
3 files changed, 6 insertions(+), 2 deletions(-)
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 8+ messages in thread
* [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance
2020-02-24 4:09 [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk for WDC UFS devices Can Guo
@ 2020-02-24 4:09 ` Can Guo
2020-02-24 4:39 ` Stanley Chu
2020-02-24 4:09 ` [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices Can Guo
2020-02-29 1:40 ` [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk " Martin K. Petersen
2 siblings, 1 reply; 8+ messages in thread
From: Can Guo @ 2020-02-24 4:09 UTC (permalink / raw)
To: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn, cang
Cc: Alim Akhtar, Avri Altman, James E.J. Bottomley,
Martin K. Petersen, Stanley Chu, Bean Huo, Bart Van Assche,
Venkat Gopalakrishnan, Tomas Winkler, open list
Currently ufshcd_vops_apply_dev_quirks() comes after all UniPro parameters
have been tuned. Move it up so that vendors have a chance to apply device
quirks in advance.
Signed-off-by: Can Guo <cang@codeaurora.org>
---
drivers/scsi/ufs/ufshcd.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index abd0e6b..03af432 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -6804,14 +6804,14 @@ static void ufshcd_tune_unipro_params(struct ufs_hba *hba)
ufshcd_tune_pa_hibern8time(hba);
}
+ ufshcd_vops_apply_dev_quirks(hba);
+
if (hba->dev_quirks & UFS_DEVICE_QUIRK_PA_TACTIVATE)
/* set 1ms timeout for PA_TACTIVATE */
ufshcd_dme_set(hba, UIC_ARG_MIB(PA_TACTIVATE), 10);
if (hba->dev_quirks & UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE)
ufshcd_quirk_tune_host_pa_tactivate(hba);
-
- ufshcd_vops_apply_dev_quirks(hba);
}
static void ufshcd_clear_dbg_ufs_stats(struct ufs_hba *hba)
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply related [flat|nested] 8+ messages in thread
* [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices
2020-02-24 4:09 [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk for WDC UFS devices Can Guo
2020-02-24 4:09 ` [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance Can Guo
@ 2020-02-24 4:09 ` Can Guo
2020-02-24 6:02 ` Avri Altman
2020-02-25 16:58 ` Asutosh Das (asd)
2020-02-29 1:40 ` [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk " Martin K. Petersen
2 siblings, 2 replies; 8+ messages in thread
From: Can Guo @ 2020-02-24 4:09 UTC (permalink / raw)
To: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn, cang
Cc: Andy Gross, Bjorn Andersson, Alim Akhtar, Avri Altman,
James E.J. Bottomley, Martin K. Petersen, Alexios Zavras,
Bart Van Assche, Evan Green, Bean Huo, Thomas Gleixner,
open list:ARM/QUALCOMM SUPPORT, open list
Western Digital UFS devices require host's PA_TACTIVATE to be lower than
device's PA_TACTIVATE, otherwise it may get stuck during hibern8 sequence.
Signed-off-by: Can Guo <cang@codeaurora.org>
---
drivers/scsi/ufs/ufs-qcom.c | 3 +++
drivers/scsi/ufs/ufs_quirks.h | 1 +
2 files changed, 4 insertions(+)
diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c
index c69c29a1c..4caa57f 100644
--- a/drivers/scsi/ufs/ufs-qcom.c
+++ b/drivers/scsi/ufs/ufs-qcom.c
@@ -956,6 +956,9 @@ static int ufs_qcom_apply_dev_quirks(struct ufs_hba *hba)
if (hba->dev_quirks & UFS_DEVICE_QUIRK_HOST_PA_SAVECONFIGTIME)
err = ufs_qcom_quirk_host_pa_saveconfigtime(hba);
+ if (hba->dev_info.wmanufacturerid == UFS_VENDOR_WDC)
+ hba->dev_quirks |= UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE;
+
return err;
}
diff --git a/drivers/scsi/ufs/ufs_quirks.h b/drivers/scsi/ufs/ufs_quirks.h
index d0ab147..df7a1e6 100644
--- a/drivers/scsi/ufs/ufs_quirks.h
+++ b/drivers/scsi/ufs/ufs_quirks.h
@@ -15,6 +15,7 @@
#define UFS_VENDOR_TOSHIBA 0x198
#define UFS_VENDOR_SAMSUNG 0x1CE
#define UFS_VENDOR_SKHYNIX 0x1AD
+#define UFS_VENDOR_WDC 0x145
/**
* ufs_dev_fix - ufs device quirk info
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
a Linux Foundation Collaborative Project
^ permalink raw reply related [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance
2020-02-24 4:09 ` [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance Can Guo
@ 2020-02-24 4:39 ` Stanley Chu
2020-02-24 4:53 ` Can Guo
0 siblings, 1 reply; 8+ messages in thread
From: Stanley Chu @ 2020-02-24 4:39 UTC (permalink / raw)
To: Can Guo
Cc: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn, Alim Akhtar, Avri Altman,
James E.J. Bottomley, Martin K. Petersen, Bean Huo,
Bart Van Assche, Venkat Gopalakrishnan, Tomas Winkler, open list
Hi Can,
On Sun, 2020-02-23 at 20:09 -0800, Can Guo wrote:
> Currently ufshcd_vops_apply_dev_quirks() comes after all UniPro parameters
> have been tuned. Move it up so that vendors have a chance to apply device
> quirks in advance.
>
> Signed-off-by: Can Guo <cang@codeaurora.org>
As discussed, ufs-mediatek needs to do corresponding patch and I will
submit it once this commit is merged.
Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance
2020-02-24 4:39 ` Stanley Chu
@ 2020-02-24 4:53 ` Can Guo
0 siblings, 0 replies; 8+ messages in thread
From: Can Guo @ 2020-02-24 4:53 UTC (permalink / raw)
To: Stanley Chu
Cc: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn, Alim Akhtar, Avri Altman,
James E.J. Bottomley, Martin K. Petersen, Bean Huo,
Bart Van Assche, Venkat Gopalakrishnan, Tomas Winkler, open list
Hi Stanley,
On 2020-02-24 12:39, Stanley Chu wrote:
> Hi Can,
>
> On Sun, 2020-02-23 at 20:09 -0800, Can Guo wrote:
>> Currently ufshcd_vops_apply_dev_quirks() comes after all UniPro
>> parameters
>> have been tuned. Move it up so that vendors have a chance to apply
>> device
>> quirks in advance.
>>
>> Signed-off-by: Can Guo <cang@codeaurora.org>
>
> As discussed, ufs-mediatek needs to do corresponding patch and I will
> submit it once this commit is merged.
>
> Reviewed-by: Stanley Chu <stanley.chu@mediatek.com>
Yes, sure, thanks for your cooperation. :)
Best Regards,
Can Guo.
^ permalink raw reply [flat|nested] 8+ messages in thread
* RE: [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices
2020-02-24 4:09 ` [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices Can Guo
@ 2020-02-24 6:02 ` Avri Altman
2020-02-25 16:58 ` Asutosh Das (asd)
1 sibling, 0 replies; 8+ messages in thread
From: Avri Altman @ 2020-02-24 6:02 UTC (permalink / raw)
To: Can Guo, asutoshd@codeaurora.org, nguyenb@codeaurora.org,
hongwus@codeaurora.org, rnayak@codeaurora.org,
linux-scsi@vger.kernel.org, kernel-team@android.com,
saravanak@google.com, salyzyn@google.com
Cc: Andy Gross, Bjorn Andersson, Alim Akhtar, James E.J. Bottomley,
Martin K. Petersen, Alexios Zavras, Bart Van Assche, Evan Green,
Bean Huo, Thomas Gleixner, open list:ARM/QUALCOMM SUPPORT,
open list
>
> Western Digital UFS devices require host's PA_TACTIVATE to be lower than
> device's PA_TACTIVATE, otherwise it may get stuck during hibern8 sequence.
>
> Signed-off-by: Can Guo <cang@codeaurora.org>
Acked-by: Avri Altman <avri.altman@wdc.com>
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices
2020-02-24 4:09 ` [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices Can Guo
2020-02-24 6:02 ` Avri Altman
@ 2020-02-25 16:58 ` Asutosh Das (asd)
1 sibling, 0 replies; 8+ messages in thread
From: Asutosh Das (asd) @ 2020-02-25 16:58 UTC (permalink / raw)
To: Can Guo, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn
Cc: Andy Gross, Bjorn Andersson, Alim Akhtar, Avri Altman,
James E.J. Bottomley, Martin K. Petersen, Alexios Zavras,
Bart Van Assche, Evan Green, Bean Huo, Thomas Gleixner,
open list:ARM/QUALCOMM SUPPORT, open list
On 2/23/2020 8:09 PM, Can Guo wrote:
> Western Digital UFS devices require host's PA_TACTIVATE to be lower than
> device's PA_TACTIVATE, otherwise it may get stuck during hibern8 sequence.
>
> Signed-off-by: Can Guo <cang@codeaurora.org>
> ---
Reviewed-by: Asutosh Das <asutoshd@codeaurora.org>
> drivers/scsi/ufs/ufs-qcom.c | 3 +++
> drivers/scsi/ufs/ufs_quirks.h | 1 +
> 2 files changed, 4 insertions(+)
>
> diff --git a/drivers/scsi/ufs/ufs-qcom.c b/drivers/scsi/ufs/ufs-qcom.c
> index c69c29a1c..4caa57f 100644
> --- a/drivers/scsi/ufs/ufs-qcom.c
> +++ b/drivers/scsi/ufs/ufs-qcom.c
> @@ -956,6 +956,9 @@ static int ufs_qcom_apply_dev_quirks(struct ufs_hba *hba)
> if (hba->dev_quirks & UFS_DEVICE_QUIRK_HOST_PA_SAVECONFIGTIME)
> err = ufs_qcom_quirk_host_pa_saveconfigtime(hba);
>
> + if (hba->dev_info.wmanufacturerid == UFS_VENDOR_WDC)
> + hba->dev_quirks |= UFS_DEVICE_QUIRK_HOST_PA_TACTIVATE;
> +
> return err;
> }
>
> diff --git a/drivers/scsi/ufs/ufs_quirks.h b/drivers/scsi/ufs/ufs_quirks.h
> index d0ab147..df7a1e6 100644
> --- a/drivers/scsi/ufs/ufs_quirks.h
> +++ b/drivers/scsi/ufs/ufs_quirks.h
> @@ -15,6 +15,7 @@
> #define UFS_VENDOR_TOSHIBA 0x198
> #define UFS_VENDOR_SAMSUNG 0x1CE
> #define UFS_VENDOR_SKHYNIX 0x1AD
> +#define UFS_VENDOR_WDC 0x145
>
> /**
> * ufs_dev_fix - ufs device quirk info
>
--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
Linux Foundation Collaborative Project
^ permalink raw reply [flat|nested] 8+ messages in thread
* Re: [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk for WDC UFS devices
2020-02-24 4:09 [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk for WDC UFS devices Can Guo
2020-02-24 4:09 ` [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance Can Guo
2020-02-24 4:09 ` [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices Can Guo
@ 2020-02-29 1:40 ` Martin K. Petersen
2 siblings, 0 replies; 8+ messages in thread
From: Martin K. Petersen @ 2020-02-29 1:40 UTC (permalink / raw)
To: Can Guo
Cc: asutoshd, nguyenb, hongwus, rnayak, linux-scsi, kernel-team,
saravanak, salyzyn
Can,
> Western Digital UFS devices require host PA_TACTIVATE to be lower than
> device PA_TACTIVATE, otherwise it may get stuck during hibern8 sequence.
Applied to 5.7/scsi-queue, thank you!
--
Martin K. Petersen Oracle Linux Engineering
^ permalink raw reply [flat|nested] 8+ messages in thread
end of thread, other threads:[~2020-02-29 1:40 UTC | newest]
Thread overview: 8+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-02-24 4:09 [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk for WDC UFS devices Can Guo
2020-02-24 4:09 ` [PATCH v2 1/2] scsi: ufs: Allow vendor apply device quirks in advance Can Guo
2020-02-24 4:39 ` Stanley Chu
2020-02-24 4:53 ` Can Guo
2020-02-24 4:09 ` [PATCH v2 2/2] scsi: ufs-qcom: Apply QUIRK_HOST_TACTIVATE for WDC UFS devices Can Guo
2020-02-24 6:02 ` Avri Altman
2020-02-25 16:58 ` Asutosh Das (asd)
2020-02-29 1:40 ` [PATCH v2 0/2] Enable HOST_PA_TACTIVATE quirk " Martin K. Petersen
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).