RE: [PATCH] ufs: core: Disable auto h8 before ssu
From: Avri Altman
Date: Tue Oct 11 2022 - 03:08:02 EST
> From: Ten Gao <ten.gao@xxxxxxxxxx>
>
> Ensure auto h8 will not hit dme h8,and there won't be two h8 in a row after
> ssu.
I don't think the hw should do that.
Can you please share on which platform/host controller did you observe this?
Thanks,
Avri
>
> Signed-off-by: Ten Gao <ten.gao@xxxxxxxxxx>
> ---
> drivers/ufs/core/ufshcd.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/ufs/core/ufshcd.c b/drivers/ufs/core/ufshcd.c index
> a202d7d5240d..42f93648d796 100644
> --- a/drivers/ufs/core/ufshcd.c
> +++ b/drivers/ufs/core/ufshcd.c
> @@ -4256,6 +4256,14 @@ void ufshcd_auto_hibern8_update(struct ufs_hba
> *hba, u32 ahit) } EXPORT_SYMBOL_GPL(ufshcd_auto_hibern8_update);
>
> +void ufshcd_auto_hibern8_disable(struct ufs_hba *hba) {
> + if (!ufshcd_is_auto_hibern8_supported(hba))
> + return;
> +
> + ufshcd_writel(hba, 0, REG_AUTO_HIBERNATE_IDLE_TIMER); }
> +
> void ufshcd_auto_hibern8_enable(struct ufs_hba *hba) {
> if (!ufshcd_is_auto_hibern8_supported(hba))
> @@ -9036,6 +9044,8 @@ static int __ufshcd_wl_suspend(struct ufs_hba
> *hba, enum ufs_pm_op pm_op)
> if (ret)
> goto enable_scaling;
>
> + ufshcd_auto_hibern8_disable(hba);
> +
> if (req_dev_pwr_mode != hba->curr_dev_pwr_mode) {
> if (pm_op != UFS_RUNTIME_PM)
> /* ensure that bkops is disabled */
> --
> 2.17.1