PCI: qcom-ep: Drop the redundant masking of global IRQ events
authorManivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Wed, 28 Aug 2024 15:46:11 +0000 (21:16 +0530)
committerKrzysztof Wilczyński <kwilczynski@kernel.org>
Sun, 1 Sep 2024 08:12:13 +0000 (08:12 +0000)
Once the events are disabled in PARF_INT_ALL_MASK register, only the
enabled events will generate global IRQ. So there is no need to do the
masking again in the IRQ handler, drop it.

If there are any spurious IRQs getting generated, they will be reported
using the existing dev_err() in the handler.

Link: https://lore.kernel.org/linux-pci/20240828-pci-qcom-hotplug-v4-1-263a385fbbcb@linaro.org
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>
Signed-off-by: Krzysztof Wilczyński <kwilczynski@kernel.org>
Reviewed-by: Konrad Dybcio <konrad.dybcio@linaro.org>
drivers/pci/controller/dwc/pcie-qcom-ep.c

index 236229f66c808eade1c6393ef8e65784ffd2756d..972a90eba494b704a423c374896904c1a231903a 100644 (file)
@@ -647,11 +647,9 @@ static irqreturn_t qcom_pcie_ep_global_irq_thread(int irq, void *data)
        struct dw_pcie *pci = &pcie_ep->pci;
        struct device *dev = pci->dev;
        u32 status = readl_relaxed(pcie_ep->parf + PARF_INT_ALL_STATUS);
-       u32 mask = readl_relaxed(pcie_ep->parf + PARF_INT_ALL_MASK);
        u32 dstate, val;
 
        writel_relaxed(status, pcie_ep->parf + PARF_INT_ALL_CLEAR);
-       status &= mask;
 
        if (FIELD_GET(PARF_INT_ALL_LINK_DOWN, status)) {
                dev_dbg(dev, "Received Linkdown event\n");