Skip to content

Commit

Permalink
scsi: ufs: ufshpb: Clean up ufshpb_suspend()/resume()
Browse files Browse the repository at this point in the history
ufshpb_resume() is only called when the HPB state is HPB_SUSPEND, so the
check statement for "ufshpb_get_state(hpb) != HPB_PRESENT" is useless.

Link: https://lore.kernel.org/r/20220505134707.35929-7-huobean@gmail.com
Reviewed-by: Keoseong Park <keosung.park@samsung.com>
Signed-off-by: Bean Huo <beanhuo@micron.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
  • Loading branch information
Bean Huo authored and Martin K. Petersen committed May 11, 2022
1 parent 32d6eab commit 18ebe23
Showing 1 changed file with 4 additions and 11 deletions.
15 changes: 4 additions & 11 deletions drivers/scsi/ufs/ufshpb.c
Original file line number Diff line number Diff line change
Expand Up @@ -2349,11 +2349,9 @@ void ufshpb_suspend(struct ufs_hba *hba)

shost_for_each_device(sdev, hba->host) {
hpb = ufshpb_get_hpb_data(sdev);
if (!hpb)
if (!hpb || ufshpb_get_state(hpb) != HPB_PRESENT)
continue;

if (ufshpb_get_state(hpb) != HPB_PRESENT)
continue;
ufshpb_set_state(hpb, HPB_SUSPEND);
ufshpb_cancel_jobs(hpb);
}
Expand All @@ -2366,20 +2364,15 @@ void ufshpb_resume(struct ufs_hba *hba)

shost_for_each_device(sdev, hba->host) {
hpb = ufshpb_get_hpb_data(sdev);
if (!hpb)
if (!hpb || ufshpb_get_state(hpb) != HPB_SUSPEND)
continue;

if ((ufshpb_get_state(hpb) != HPB_PRESENT) &&
(ufshpb_get_state(hpb) != HPB_SUSPEND))
continue;
ufshpb_set_state(hpb, HPB_PRESENT);
ufshpb_kick_map_work(hpb);
if (hpb->is_hcm) {
unsigned int poll =
hpb->params.timeout_polling_interval_ms;
unsigned int poll = hpb->params.timeout_polling_interval_ms;

schedule_delayed_work(&hpb->ufshpb_read_to_work,
msecs_to_jiffies(poll));
schedule_delayed_work(&hpb->ufshpb_read_to_work, msecs_to_jiffies(poll));
}
}
}
Expand Down

0 comments on commit 18ebe23

Please sign in to comment.