disp: msm: Subtract DSI interrupt count after interrupt was destroyed
DSI interrupt may be destroyed before it is disabled, it will cause to the interrupt count can't be cleared, so subtrace DSI interrupt count in disable function even it was destroyed. Change-Id: I430b0281957db588c7405d5775d0c10f2f498b36 Signed-off-by: Lei Chen <chenlei@codeaurora.org> Signed-off-by: Satya Rama Aditya Pinapala <psraditya30@codeaurora.org>
This commit is contained in:

committed by
Satya Rama Aditya Pinapala

parent
a5cae7c0f3
commit
92ecce2873
@@ -2675,8 +2675,7 @@ void dsi_ctrl_disable_status_interrupt(struct dsi_ctrl *dsi_ctrl,
|
||||
{
|
||||
unsigned long flags;
|
||||
|
||||
if (!dsi_ctrl || dsi_ctrl->irq_info.irq_num == -1 ||
|
||||
intr_idx >= DSI_STATUS_INTERRUPT_COUNT)
|
||||
if (!dsi_ctrl || intr_idx >= DSI_STATUS_INTERRUPT_COUNT)
|
||||
return;
|
||||
|
||||
SDE_EVT32(dsi_ctrl->cell_index, SDE_EVTLOG_FUNC_ENTRY);
|
||||
@@ -2689,7 +2688,8 @@ void dsi_ctrl_disable_status_interrupt(struct dsi_ctrl *dsi_ctrl,
|
||||
dsi_ctrl->irq_info.irq_stat_mask);
|
||||
|
||||
/* don't need irq if no lines are enabled */
|
||||
if (dsi_ctrl->irq_info.irq_stat_mask == 0)
|
||||
if (dsi_ctrl->irq_info.irq_stat_mask == 0 &&
|
||||
dsi_ctrl->irq_info.irq_num != -1)
|
||||
disable_irq_nosync(dsi_ctrl->irq_info.irq_num);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user