Use ERR_IRQ_STATUS instead of ERR_IRQ_STATUS_RAW to get interrupt
status. ERR_IRQ_STATUS_RAW has the status of the interrupts
before masking whereas ERR_IRQ_STATUS has the status of the interrupts
after masking. Since all the interrupts are unmasked here, use
ERR_IRQ_STATUS.

Signed-off-by: Kishon Vijay Abraham I <kis...@ti.com>
---
 drivers/pci/controller/dwc/pci-keystone.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/pci/controller/dwc/pci-keystone.c 
b/drivers/pci/controller/dwc/pci-keystone.c
index e181e6277323..c0bba7b604fa 100644
--- a/drivers/pci/controller/dwc/pci-keystone.c
+++ b/drivers/pci/controller/dwc/pci-keystone.c
@@ -80,7 +80,6 @@
 #define ERR_IRQ_ALL    (ERR_AER | ERR_AXI | ERR_CORR | \
                         ERR_NONFATAL | ERR_FATAL | ERR_SYS)
 #define ERR_FATAL_IRQ  (ERR_FATAL | ERR_AXI)
-#define ERR_IRQ_STATUS_RAW             0x1c0
 #define ERR_IRQ_STATUS                 0x1c4
 #define ERR_IRQ_ENABLE_SET             0x1c8
 #define ERR_IRQ_ENABLE_CLR             0x1cc
@@ -249,7 +248,7 @@ static irqreturn_t ks_pcie_handle_error_irq(struct 
keystone_pcie *ks_pcie)
 {
        u32 status;
 
-       status = ks_pcie_app_readl(ks_pcie, ERR_IRQ_STATUS_RAW) & ERR_IRQ_ALL;
+       status = ks_pcie_app_readl(ks_pcie, ERR_IRQ_STATUS);
        if (!status)
                return IRQ_NONE;
 
-- 
2.17.1

Reply via email to