Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

PCI: xilinx: Don't enable config completion interrupts

The Xilinx AXI bridge for PCI Express device provides interrupts indicating
the completion of config space accesses. We have previously
enabled/unmasked them but do nothing with them besides acknowledge them.

Leave the interrupts masked in order to avoid servicing a large number of
pointless interrupts during boot.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Cc: Bharat Kumar Gogada <bharatku@xilinx.com>
Cc: Michal Simek <michal.simek@xilinx.com>
Cc: Ravikiran Gummaluri <rgummal@xilinx.com>

authored by

Paul Burton and committed by
Bjorn Helgaas
aac2e96b d0b5dda6

+3 -2
+3 -2
drivers/pci/host/pcie-xilinx.c
··· 60 60 #define XILINX_PCIE_INTR_MST_SLVERR BIT(27) 61 61 #define XILINX_PCIE_INTR_MST_ERRP BIT(28) 62 62 #define XILINX_PCIE_IMR_ALL_MASK 0x1FF30FED 63 + #define XILINX_PCIE_IMR_ENABLE_MASK 0x1FF30F0D 63 64 #define XILINX_PCIE_IDR_ALL_MASK 0xFFFFFFFF 64 65 65 66 /* Root Port Error FIFO Read Register definitions */ ··· 555 554 XILINX_PCIE_IMR_ALL_MASK, 556 555 XILINX_PCIE_REG_IDR); 557 556 558 - /* Enable all interrupts */ 559 - pcie_write(port, XILINX_PCIE_IMR_ALL_MASK, XILINX_PCIE_REG_IMR); 557 + /* Enable all interrupts we handle */ 558 + pcie_write(port, XILINX_PCIE_IMR_ENABLE_MASK, XILINX_PCIE_REG_IMR); 560 559 561 560 /* Enable the Bridge enable bit */ 562 561 pcie_write(port, pcie_read(port, XILINX_PCIE_REG_RPSC) |