summaryrefslogtreecommitdiffstats
path: root/drivers/scsi/be2iscsi/be_main.c
diff options
context:
space:
mode:
authorJitendra Bhivare <jitendra.bhivare@broadcom.com>2016-08-19 11:50:20 +0200
committerMartin K. Petersen <martin.petersen@oracle.com>2016-08-24 04:42:44 +0200
commit4ee1ec42b33036c785d92744446630e6e242327e (patch)
tree68fa0734d9abd32562100e2cb58c44fe0f85d802 /drivers/scsi/be2iscsi/be_main.c
parentscsi: be2iscsi: Fail the sessions immediately after TPE (diff)
downloadlinux-4ee1ec42b33036c785d92744446630e6e242327e.tar.xz
linux-4ee1ec42b33036c785d92744446630e6e242327e.zip
scsi: be2iscsi: Add FUNCTION_RESET during driver unload
Driver unload should call COMMON_FUNCTION_RESET. For TPE feature, this ensures that FW has knowledge about driver getting unloaded and can reset its bit vector. Signed-off-by: Jitendra Bhivare <jitendra.bhivare@broadcom.com> Reviewed-by: Hannes Reinecke <hare@suse.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
Diffstat (limited to 'drivers/scsi/be2iscsi/be_main.c')
-rw-r--r--drivers/scsi/be2iscsi/be_main.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/be2iscsi/be_main.c b/drivers/scsi/be2iscsi/be_main.c
index cf82973e2789..3aa2f04e71a7 100644
--- a/drivers/scsi/be2iscsi/be_main.c
+++ b/drivers/scsi/be2iscsi/be_main.c
@@ -3771,9 +3771,12 @@ static void hwi_cleanup_port(struct beiscsi_hba *phba)
beiscsi_cmd_q_destroy(ctrl, q, QTYPE_EQ);
}
}
+ /* this ensures complete FW cleanup */
+ beiscsi_cmd_function_reset(phba);
/* last communication, indicate driver is unloading */
beiscsi_cmd_special_wrb(&phba->ctrl, 0);
}
+
static int hwi_init_port(struct beiscsi_hba *phba)
{
struct hwi_controller *phwi_ctrlr;