Hi, On Mon, 2020-10-26 at 14:31 -0700, Asutosh Das wrote: > From: "Bao D. Nguyen" <nguyenb@xxxxxxxxxxxxxx> > > When bkops is enabled, the UFS device may do bkops during suspend. > With bkops enabled during suspend, keep the regulators > in active operation configuration, allowing the device to draw > high power to support bkops and avoid over current event. > > Signed-off-by: Bao D. Nguyen <nguyenb@xxxxxxxxxxxxxx> > Signed-off-by: Asutosh Das <asutoshd@xxxxxxxxxxxxxx> > --- > drivers/scsi/ufs/ufshcd.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c > index 47c544d..a94543c 100644 > --- a/drivers/scsi/ufs/ufshcd.c > +++ b/drivers/scsi/ufs/ufshcd.c > @@ -8523,7 +8523,9 @@ static int ufshcd_suspend(struct ufs_hba *hba, enum ufs_pm_op pm_op) > if (ret) > goto set_dev_active; > > - ufshcd_vreg_set_lpm(hba); > + /* Device may perform bkops if autobkops is enabled */ > + if (!hba->auto_bkops_enabled) > + ufshcd_vreg_set_lpm(hba); If auto bkops is allowed and enabled during runtime suspend (currently auto bkops is allow in runtime suspend only, and not allowed in system suspend), hba->dev_info.b_rpm_dev_flush_capable would be true and keep the current device power mode, say Active Power Mode. In this case, regulator would not be set as lpm mode by ufshcd_vreg_set_lpm(). Please correct me if I was wrong. Thanks, Stanley Chu