Blame SOURCES/0125-scsi-scsi-qla2xxx-Initialized-mailbox-to-prevent-dri.patch

3d7c23
From 6ae9cc7375f15c0c6b6b24b1f39824c5631ca056 Mon Sep 17 00:00:00 2001
3d7c23
From: Himanshu Madhani <hmadhani@redhat.com>
3d7c23
Date: Fri, 8 Nov 2019 20:28:02 -0500
3d7c23
Subject: [PATCH 125/155] [scsi] scsi: qla2xxx: Initialized mailbox to prevent
3d7c23
 driver load failure
3d7c23
3d7c23
Message-id: <20191108202802.16449-1-hmadhani@redhat.com>
3d7c23
Patchwork-id: 284635
3d7c23
O-Subject: [RHEL 7.8 e-store PATCH] scsi: qla2xxx: Initialized mailbox to prevent driver load failure
3d7c23
Bugzilla: 1770307
3d7c23
RH-Acked-by: Ewan Milne <emilne@redhat.com>
3d7c23
RH-Acked-by: Tomas Henzl <thenzl@redhat.com>
3d7c23
RH-Acked-by: Jarod Wilson <jarod@redhat.com>
3d7c23
3d7c23
From: Himanshu Madhani <hmadhani@marvell.com>
3d7c23
3d7c23
Bugzilla: 1770307
3d7c23
3d7c23
Brewbuild:
3d7c23
==========
3d7c23
https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=24573208
3d7c23
3d7c23
Testing:
3d7c23
========
3d7c23
Verified by Marvell test team
3d7c23
3d7c23
This patch fixes issue with Gen7 adapter in a blade environment where one
3d7c23
of the ports will not be detected by driver. Firmware expects mailbox 11 to
3d7c23
be set or cleared by driver for newer ISP.
3d7c23
3d7c23
Following message is seen in the log file:
3d7c23
3d7c23
[   18.810892] qla2xxx [0000:d8:00.0]-1820:1: **** Failed=102 mb[0]=4005 mb[1]=37 mb[2]=20 mb[3]=8
3d7c23
[   18.819596]  cmd=2 ****
3d7c23
3d7c23
[mkp: typos]
3d7c23
3d7c23
Link: https://lore.kernel.org/r/20191022193643.7076-2-hmadhani@marvell.com
3d7c23
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
3d7c23
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
3d7c23
(cherry picked from commit c2ff2a36eff60efb5e123c940115216d6bf65684)
3d7c23
Signed-off-by: Himanshu Madhani <hmadhani@redhat.com>
3d7c23
Signed-off-by: Jan Stancek <jstancek@redhat.com>
3d7c23
---
3d7c23
 drivers/scsi/qla2xxx/qla_mbx.c | 3 ++-
3d7c23
 1 file changed, 2 insertions(+), 1 deletion(-)
3d7c23
3d7c23
diff --git a/drivers/scsi/qla2xxx/qla_mbx.c b/drivers/scsi/qla2xxx/qla_mbx.c
3d7c23
index 11a4c4bd62fc..e082535ed733 100644
3d7c23
--- a/drivers/scsi/qla2xxx/qla_mbx.c
3d7c23
+++ b/drivers/scsi/qla2xxx/qla_mbx.c
3d7c23
@@ -698,6 +698,7 @@ qla2x00_execute_fw(scsi_qla_host_t *vha, uint32_t risc_addr)
3d7c23
 		mcp->mb[2] = LSW(risc_addr);
3d7c23
 		mcp->mb[3] = 0;
3d7c23
 		mcp->mb[4] = 0;
3d7c23
+		mcp->mb[11] = 0;
3d7c23
 		ha->flags.using_lr_setting = 0;
3d7c23
 		if (IS_QLA25XX(ha) || IS_QLA81XX(ha) || IS_QLA83XX(ha) ||
3d7c23
 		    IS_QLA27XX(ha) || IS_QLA28XX(ha)) {
3d7c23
@@ -742,7 +743,7 @@ qla2x00_execute_fw(scsi_qla_host_t *vha, uint32_t risc_addr)
3d7c23
 		if (ha->flags.exchoffld_enabled)
3d7c23
 			mcp->mb[4] |= ENABLE_EXCHANGE_OFFLD;
3d7c23
 
3d7c23
-		mcp->out_mb |= MBX_4|MBX_3|MBX_2|MBX_1;
3d7c23
+		mcp->out_mb |= MBX_4 | MBX_3 | MBX_2 | MBX_1 | MBX_11;
3d7c23
 		mcp->in_mb |= MBX_3 | MBX_2 | MBX_1;
3d7c23
 	} else {
3d7c23
 		mcp->mb[1] = LSW(risc_addr);
3d7c23
-- 
3d7c23
2.13.6
3d7c23