diff options
-rw-r--r-- | drivers/pci/host/pcie-designware.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/pci/host/pcie-designware.c b/drivers/pci/host/pcie-designware.c index 1c92833a4ed3..c85cac009583 100644 --- a/drivers/pci/host/pcie-designware.c +++ b/drivers/pci/host/pcie-designware.c | |||
@@ -167,11 +167,13 @@ void dw_handle_msi_irq(struct pcie_port *pp) | |||
167 | while ((pos = find_next_bit(&val, 32, pos)) != 32) { | 167 | while ((pos = find_next_bit(&val, 32, pos)) != 32) { |
168 | irq = irq_find_mapping(pp->irq_domain, | 168 | irq = irq_find_mapping(pp->irq_domain, |
169 | i * 32 + pos); | 169 | i * 32 + pos); |
170 | dw_pcie_wr_own_conf(pp, | ||
171 | PCIE_MSI_INTR0_STATUS + i * 12, | ||
172 | 4, 1 << pos); | ||
170 | generic_handle_irq(irq); | 173 | generic_handle_irq(irq); |
171 | pos++; | 174 | pos++; |
172 | } | 175 | } |
173 | } | 176 | } |
174 | dw_pcie_wr_own_conf(pp, PCIE_MSI_INTR0_STATUS + i * 12, 4, val); | ||
175 | } | 177 | } |
176 | } | 178 | } |
177 | 179 | ||