linux/drivers/scsi/qla2xxx
Andrew Vasquez b0f18eee6f scsi: qla2xxx: Update BPM enablement semantics.
commit e4e3a2ce95 ("scsi: qla2xxx: Add ability to autodetect SFP
type") takes a heavy handed approach to BPM (Buffer Plus Management)
enablement:

1) During hardware initialization, if an LR-capable transceiver is
   recognized, the driver schedules a disruptive post-initialization
   chip-reset (ISP-ABORT) to allow the BPM settings to be sent to the
   firmware.  This chip-reset will result in (short-term) path-loss to
   all fc-rports and their attached SCSI devices.

2) LR-detection is triggered during any link-up event, resulting in a
   refresh and potential chip-reset

Based on firmware-team guidance, upon LR-capable transceiver
recognition, the driver's hardware initialization code will now
re-execute firmware with the new BPM settings, then continue on with
driver initialization.  To address the second issue, the driver
performs LR-capable detection upon the driver receiving a
transceiver-insertion asynchronous event from firmware.  No short-term
path loss is needed with this new semantic.

Link: https://lore.kernel.org/r/20200226224022.24518-10-hmadhani@marvell.com
Signed-off-by: Himanshu Madhani <hmadhani@marvell.com>
Signed-off-by: Andrew Vasquez <andrewv@marvell.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
2020-02-28 20:32:33 -05:00
..
Kconfig treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
Makefile
qla_attr.c scsi: qla2xxx: Add endianizer macro calls to fc host stats 2020-02-24 12:34:27 -05:00
qla_bsg.c scsi: qla2xxx: Return appropriate failure through BSG Interface 2020-02-28 20:32:29 -05:00
qla_bsg.h scsi: qla2xxx: Add 28xx flash primary/secondary status/image mechanism 2019-03-19 12:22:55 -04:00
qla_dbg.c scsi: qla2xxx: Fix unbound NVME response length 2020-01-30 10:31:47 -05:00
qla_dbg.h scsi: qla2xxx: Fix unbound NVME response length 2020-01-30 10:31:47 -05:00
qla_def.h scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_devtbl.h
qla_dfs.c scsi: qla2xxx: fix FW resource count values 2020-02-28 20:32:31 -05:00
qla_dsd.h scsi: qla2xxx: Include the <asm/unaligned.h> header file from qla_dsd.h 2019-08-12 21:34:04 -04:00
qla_fw.h scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_gbl.h scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_gs.c scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error 2020-02-28 20:32:28 -05:00
qla_init.c scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_inline.h scsi: qla2xxx: Add a shadow variable to hold disc_state history of fcport 2019-12-19 22:42:44 -05:00
qla_iocb.c scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function 2020-02-28 19:55:01 -05:00
qla_isr.c scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_mbx.c scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_mid.c scsi: qla2xxx: Use a dedicated interrupt handler for 'handshake-required' ISPs 2020-02-28 20:32:30 -05:00
qla_mr.c scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function 2020-02-28 19:55:01 -05:00
qla_mr.h scsi: qla2xxx: Introduce the dsd32 and dsd64 data structures 2019-04-29 17:24:51 -04:00
qla_nvme.c scsi: qla2xxx: Convert MAKE_HANDLE() from a define into an inline function 2020-02-28 19:55:01 -05:00
qla_nvme.h scsi: qla2xxx: Modify NVMe include directives 2019-08-12 21:34:08 -04:00
qla_nx2.c scsi: qla2xxx: Suppress a Coveritiy complaint about integer overflow 2019-08-12 21:34:07 -04:00
qla_nx2.h scsi: qla2xxx: Remove unused symbols 2018-02-12 11:43:24 -05:00
qla_nx.c scsi: qla2xxx: Use get_unaligned_*() instead of open-coding these functions 2020-01-02 21:53:31 -05:00
qla_nx.h scsi: qla2xxx: Improve Linux kernel coding style conformance 2019-08-12 21:34:04 -04:00
qla_os.c scsi: qla2xxx: Update BPM enablement semantics. 2020-02-28 20:32:33 -05:00
qla_settings.h
qla_sup.c scsi: qla2xxx: Return appropriate failure through BSG Interface 2020-02-28 20:32:29 -05:00
qla_target.c scsi: qla2xxx: Fix FCP-SCSI FC4 flag passing error 2020-02-28 20:32:28 -05:00
qla_target.h scsi: tcm_qla2xxx: Make qlt_alloc_qfull_cmd() set cmd->se_cmd.map_tag 2020-02-10 22:46:54 -05:00
qla_tmpl.c scsi: qla2xxx: Use endian macros to assign static fields in fwdump header 2020-02-24 12:34:29 -05:00
qla_tmpl.h scsi: qla2xxx: Fix sparse warning reported by kbuild bot 2020-02-28 19:49:00 -05:00
qla_version.h scsi: qla2xxx: Update driver version to 10.01.00.24-k 2020-02-24 12:34:30 -05:00
tcm_qla2xxx.c scsi: tcm_qla2xxx: Make qlt_alloc_qfull_cmd() set cmd->se_cmd.map_tag 2020-02-10 22:46:54 -05:00
tcm_qla2xxx.h scsi: qla2xxx: deadlock by configfs_depend_item 2018-12-19 21:26:38 -05:00