]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
scsi: ufs: Abort gating if clock on request is pending
authorAsutosh Das <asutoshd@codeaurora.org>
Fri, 15 Nov 2019 06:09:29 +0000 (22:09 -0800)
committerMartin K. Petersen <martin.petersen@oracle.com>
Wed, 20 Nov 2019 02:37:32 +0000 (21:37 -0500)
This change attempts to abort gating of clocks if a request to turn-on
clocks is pending.  This would in turn avoid turning OFF and back ON the
clocks.

Link: https://lore.kernel.org/r/1573798172-20534-7-git-send-email-cang@codeaurora.org
Reviewed-by: Bean Huo <beanhuo@micron.com>
Signed-off-by: Asutosh Das <asutoshd@codeaurora.org>
Signed-off-by: Can Guo <cang@codeaurora.org>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/ufs/ufshcd.c

index 6a690a94790cc8dd5b99dad95f2380de76a625d7..180593ac4062a4d9067c692f701f82493cb57c64 100644 (file)
@@ -1610,7 +1610,7 @@ static void ufshcd_gate_work(struct work_struct *work)
         * state to CLKS_ON.
         */
        if (hba->clk_gating.is_suspended ||
-               (hba->clk_gating.state == REQ_CLKS_ON)) {
+               (hba->clk_gating.state != REQ_CLKS_OFF)) {
                hba->clk_gating.state = CLKS_ON;
                trace_ufshcd_clk_gating(dev_name(hba->dev),
                                        hba->clk_gating.state);