scsi: qla2xxx: Update BPM enablement semantics.
commit e4e3a2ce ("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>
Showing
- drivers/scsi/qla2xxx/qla_def.h 12 additions, 8 deletionsdrivers/scsi/qla2xxx/qla_def.h
- drivers/scsi/qla2xxx/qla_fw.h 1 addition, 2 deletionsdrivers/scsi/qla2xxx/qla_fw.h
- drivers/scsi/qla2xxx/qla_gbl.h 1 addition, 1 deletiondrivers/scsi/qla2xxx/qla_gbl.h
- drivers/scsi/qla2xxx/qla_init.c 64 additions, 26 deletionsdrivers/scsi/qla2xxx/qla_init.c
- drivers/scsi/qla2xxx/qla_isr.c 5 additions, 4 deletionsdrivers/scsi/qla2xxx/qla_isr.c
- drivers/scsi/qla2xxx/qla_mbx.c 7 additions, 41 deletionsdrivers/scsi/qla2xxx/qla_mbx.c
- drivers/scsi/qla2xxx/qla_os.c 8 additions, 14 deletionsdrivers/scsi/qla2xxx/qla_os.c
Loading
Please register or sign in to comment