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

Commit 28f069bc authored by Tony Truong's avatar Tony Truong Committed by Gerrit - the friendly Code Review server
Browse files

msm: msi: add hooks for MSI enable/disable



There are cases where MSI IRQ mask/unmask does not
correctly disable the source IRQ. Add enable and
disable hooks to handle these cases.

Change-Id: Ifdad14fc7af3b11ad1cdd54edcf991349ee83733
Signed-off-by: default avatarTony Truong <truong@codeaurora.org>
parent dc23ed42
Loading
Loading
Loading
Loading
+2 −3
Original line number Diff line number Diff line
@@ -155,6 +155,8 @@ static void msm_msi_unmask_irq(struct irq_data *data)

static struct irq_chip msm_msi_irq_chip = {
	.name = "msm_pci_msi",
	.irq_enable = msm_msi_unmask_irq,
	.irq_disable = msm_msi_mask_irq,
	.irq_mask = msm_msi_mask_irq,
	.irq_unmask = msm_msi_unmask_irq,
};
@@ -328,9 +330,6 @@ static int msm_msi_irq_domain_alloc(struct irq_domain *domain,
				&msm_msi_bottom_irq_chip, msi_irq,
				handle_simple_irq, NULL, NULL);

		if (msi->type == MSM_MSI_TYPE_QCOM)
			irq_set_status_flags(msi_irq->virq, IRQ_DISABLE_UNLAZY);

		client->nr_irqs++;
		pos++;
	}