Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit dfc5d4a9 authored by Karthikeyan Ramasubramanian's avatar Karthikeyan Ramasubramanian Committed by Gerrit - the friendly Code Review server
Browse files

soc: qcom: Explicitly de-assert IPC interrupt lines



IPC interrupts are modelled as level-triggered interrupts. De-assert
the interrupts after it is asserted.

CRs-Fixed: 1079350
Change-Id: I46b0e2d6fb85923db2506d0e1ad04eafa46a25e9
Signed-off-by: default avatarKarthikeyan Ramasubramanian <kramasub@codeaurora.org>
parent 608a2529
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -265,6 +265,8 @@ static void send_irq(struct edge_info *einfo)
	 */
	wmb();
	writel_relaxed(einfo->out_irq_mask, einfo->out_irq_reg);
	if (einfo->remote_proc_id != SMEM_SPSS)
		writel_relaxed(0, einfo->out_irq_reg);
	einfo->tx_irq_count++;
}

+2 −0
Original line number Diff line number Diff line
@@ -1598,6 +1598,8 @@ static void smp2p_send_interrupt(int remote_pid)
		wmb();
		writel_relaxed(smp2p_int_cfgs[remote_pid].out_int_mask,
			smp2p_int_cfgs[remote_pid].out_int_ptr);
		writel_relaxed(0,
			smp2p_int_cfgs[remote_pid].out_int_ptr);
	} else {
		smp2p_remote_mock_rx_interrupt();
	}