summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorSubhash Jadavani <subhashj@codeaurora.org>2014-11-21 13:21:40 -0800
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-22 10:58:10 -0700
commit7248753f686a9c308b9a10812aecb2cc996b05cc (patch)
treebfeb3d4411c6d3594a9c6f74428fdf54a004a7fa /include
parentc991cc0db038ff1a61bee2261be74a3de71a1d4c (diff)
scsi: ufs: optimize clock, pm_qos, hibern8 handling in queuecommand
ufshcd_queuecommand() vote for the resources in this order: clocks, pm_qos latency, hibern8 exit. If any of these votes are not already applied, each one has to be applied asynchronously and in that case we are releasing all the previously applied resource votes (for example, if hibern8 exit has to be completed asynchronously, we release the votes for pm_qos and clocks as well). This is not a optimal solution instead we should skip scheduling the unvoting work for already voted resources. Change-Id: Ie700d9b3bf64370a5885787f7313d41adb5b3566 Signed-off-by: Subhash Jadavani <subhashj@codeaurora.org>
Diffstat (limited to 'include')
-rw-r--r--include/linux/scsi/ufs/ufshcd.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/scsi/ufs/ufshcd.h b/include/linux/scsi/ufs/ufshcd.h
index fd3ba04771c8..c29027ea9ee7 100644
--- a/include/linux/scsi/ufs/ufshcd.h
+++ b/include/linux/scsi/ufs/ufshcd.h
@@ -972,7 +972,7 @@ int ufshcd_query_descriptor(struct ufs_hba *hba, enum query_opcode opcode,
enum desc_idn idn, u8 index, u8 selector, u8 *desc_buf, int *buf_len);
int ufshcd_hold(struct ufs_hba *hba, bool async);
-void ufshcd_release(struct ufs_hba *hba);
+void ufshcd_release(struct ufs_hba *hba, bool no_sched);
int ufshcd_wait_for_doorbell_clr(struct ufs_hba *hba, u64 wait_timeout_us);
int ufshcd_change_power_mode(struct ufs_hba *hba,
struct ufs_pa_layer_attr *pwr_mode);