Browse Source

[SCSI] megaraid_sas: add readl to force PCI posting flush

MegaRAID SAS Driver get unexpected Interrupt.  Add the dummy readl to
force PCI flush will fix this issue.

Signed-off-by: Bo Yang <bo.yang@lsi.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Stable Tree <stable@kernel.org>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Yang, Bo 16 years ago
parent
commit
06f579dee5
1 changed files with 6 additions and 0 deletions
  1. 6 0
      drivers/scsi/megaraid/megaraid_sas.c

+ 6 - 0
drivers/scsi/megaraid/megaraid_sas.c

@@ -198,6 +198,9 @@ megasas_clear_intr_xscale(struct megasas_register_set __iomem * regs)
 	 */
 	writel(status, &regs->outbound_intr_status);
 
+	/* Dummy readl to force pci flush */
+	readl(&regs->outbound_intr_status);
+
 	return 0;
 }
 
@@ -293,6 +296,9 @@ megasas_clear_intr_ppc(struct megasas_register_set __iomem * regs)
 	 */
 	writel(status, &regs->outbound_doorbell_clear);
 
+	/* Dummy readl to force pci flush */
+	readl(&regs->outbound_doorbell_clear);
+
 	return 0;
 }
 /**