Re: [PATCH v1 2/2] scsi: ufs: disable interrupt during clock-gating

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 12/7/2019 4:22 AM, Stanley Chu wrote:
Similar to suspend, ufshcd interrupt can be disabled since
there won't be any host controller transaction expected till
clocks ungated.

Signed-off-by: Stanley Chu <stanley.chu@xxxxxxxxxxxx>
---
  drivers/scsi/ufs/ufshcd.c | 4 ++++
  1 file changed, 4 insertions(+)

diff --git a/drivers/scsi/ufs/ufshcd.c b/drivers/scsi/ufs/ufshcd.c
index f80bd4e811cb..5de105e82c32 100644
--- a/drivers/scsi/ufs/ufshcd.c
+++ b/drivers/scsi/ufs/ufshcd.c
@@ -1490,6 +1490,8 @@ static void ufshcd_ungate_work(struct work_struct *work)
  	spin_unlock_irqrestore(hba->host->host_lock, flags);
  	ufshcd_setup_clocks(hba, true);
+ ufshcd_enable_irq(hba);
+
  	/* Exit from hibern8 */
  	if (ufshcd_can_hibern8_during_gating(hba)) {
  		/* Prevent gating in this path */
@@ -1636,6 +1638,8 @@ static void ufshcd_gate_work(struct work_struct *work)
  		ufshcd_set_link_hibern8(hba);
  	}
+ ufshcd_disable_irq(hba);
+
  	if (!ufshcd_is_link_active(hba))
  		ufshcd_setup_clocks(hba, false);
  	else


Hi,
Does this save significant power? I see that gate/ungate of clocks happen far too frequently than suspend/resume.

Have you considered how much latency this would add to the gating/ungating path?

-asd

--
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum,
Linux Foundation Collaborative Project



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [SCSI Target Devel]     [Linux SCSI Target Infrastructure]     [Kernel Newbies]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Linux IIO]     [Samba]     [Device Mapper]

  Powered by Linux