diff mbox

aacraid: Fix INTx/MSI-x issue with older controllers

Message ID 20170209180447.31404-1-david.carroll@microsemi.com (mailing list archive)
State Accepted, archived
Headers show

Commit Message

Dave Carroll Feb. 9, 2017, 6:04 p.m. UTC
commit 78cbccd3bd683 ("[PATCH] aacraid: Fix for KDUMP driver hang")
 
caused a problem on older controllers which do not support MSI-x (namely
ASR3405,ASR3805). This patch conditionalizes the previous patch to 
controllers which support MSI-x

cc: stable@vger.kernel.org
Fixes: 78cbccd3bd683c295a44af8050797dc4a41376ff
Reported-by: Arkadiusz Miskiewicz <a.miskiewicz@gmail.com>
Signed-off-by: Dave Carroll <david.carroll@microsemi.com>
Reviewed-by: Raghava Aditya Renukunta <RaghavaAditya.Renukunta@microsemi.com>
---
 drivers/scsi/aacraid/comminit.c | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

Comments

Martin K. Petersen Feb. 9, 2017, 11:59 p.m. UTC | #1
>>>>> "Dave" == Dave Carroll <david.carroll@microsemi.com> writes:

Dave> commit 78cbccd3bd683 ("[PATCH] aacraid: Fix for KDUMP driver
Dave> hang") caused a problem on older controllers which do not support
Dave> MSI-x (namely ASR3405,ASR3805). This patch conditionalizes the
Dave> previous patch to controllers which support MSI-x

Applied to 4.10/scsi-fixes.
diff mbox

Patch

diff --git a/drivers/scsi/aacraid/comminit.c b/drivers/scsi/aacraid/comminit.c
index 4f56b10..d56df36 100644
--- a/drivers/scsi/aacraid/comminit.c
+++ b/drivers/scsi/aacraid/comminit.c
@@ -50,9 +50,13 @@  struct aac_common aac_config = {
 
 static inline int aac_is_msix_mode(struct aac_dev *dev)
 {
-	u32 status;
+	u32 status = 0;
 
-	status = src_readl(dev, MUnit.OMR);
+	if (dev->pdev->device == PMC_DEVICE_S6 ||
+		dev->pdev->device == PMC_DEVICE_S7 ||
+		dev->pdev->device == PMC_DEVICE_S8) {
+		status = src_readl(dev, MUnit.OMR);
+	}
 	return (status & AAC_INT_MODE_MSIX);
 }