Cavium Driver Release Notes CAVIUM INC. All rights reserved. Table of Contents 1. Change History 2. Known Issues 3. Notices 4. Contacting Support 1. Changes History * 10.01.00.55.xx.y-k HM 10/29/2019 Enhancements: * None Fixes * qla2xxx: re-PLOGI on PRLI NVME failure [RH-BZ1731581] NVMe/FC Failed to Reconnect to Target Even with Manual Connect. Reboot Required to Fix Resolution: When PRLI failure is encountered by the target which does not understand FC-NVMe, restart the state machine by going back to PLOGI state. Scope: ISP26xx/27xx/28xx * qla2xxx: update: fix stuck login session [ER0000000145880] Initiator port did not become ONLINE after LOOP UP Resolution: Session is stuck if driver sees FW has received a PRLI. Driver allows FW to finish with processing of PRLI by checking back with FW at a later time to see if the PRLI has finished. Instead, driver failed to push forward after re-checking PRLI completion. Scope: All FC adapters * 10.01.00.54.xx.y-k HM 10/05/2019 * qla2xxx: v2: Fix partial flash write of MBI * 10.01.00.53.xx.y-k HM 09/18/2019 * qla2xxx: fix stuck session in GNL * qla2xxx: consolidate fabric scan * qla2xxx: Correct fcport flags handling. * qla2xxx: fix RIDA format 2 * qla2xxx: fix unload hang * 10.01.00.52.xx.y-k HM 08/29/2019 * qla2xxx: serialize fc_port alloc in N2N * qla2xxx: fix driver attach problem * qla2xxx: fix flash read * qla2xxx: NPIV does not come up after FW dump. * qla2xxx: fix RDP respond data format bug. * qla2xxx: fix N2N link up fail * qla2xxx: fix unintend wait * qla2xxx: cleanup trace buffer initialization * qla2xxx: Fix login failure in point-to-point mode. * qla2xxx: Update misssing disc_state when in login path. * 10.01.00.51.xx.y-k HM 07/30/2019 * qla2xxx: update: MPI heartbeat stop * qla2xxx: capture MPI Dump with Force FW dump * qla2xxx: fix stale session * qla2xxx: fix stuck login session * qla2xxx: force semaphore on flash validation failure. * qla2xxx: MPI heartbeat stop * qla2xxx: add MB timeout check for 27xx/28xx FW dump * qla2xxx: Fix macro which verifies switch reserved address * 10.01.00.50.xx.y-k QT 06/28/2019 * qla2xxx: set remove flag for all VP * qla2xxx: allow NVME IO to resume with short cable pull. * qla2xxx: TEMP: disable stat count to prevent crash * qla2xxx: add more FW debug information * qla2xxx: Revert: Disable T10-DIF when FC-NVMe is enabled * qla2xxx: Revert: Disable T10-DIF feature with FC-NVMe during probe * 10.01.00.49.xx.y-k QT 06/24/2019 * qla2xxx: Fix unbound sleep in fcport delete path. * qla2xxx: Fix hang in fcport delete path. * qla2xxx: Fix kernel crash after disconnecting NVMe devices. * qla2xxx: move IO flush to the front of NVME rport unregistration * qla2xxx: migrate srb->ref_count to cmd_kref * qla2xxx: fix potential multiple queue_work for nvme ls completion * qla2xxx: Wrong reference count field usage * qla2xxx: update: optimize NPIV tear down process. * qla2xxx: Use proper bit position when reading dual FCP-NVMe priority * 10.01.00.48.xx.y-k HM 06/01/2019 * qla2xxx: update: fix premature timer expiration * 10.01.00.47.xx.y-k HM 05/31/2019 * qla2xxx: Update BPM enablement semantics. * qla2xxx: Use common update-firmware-options routine for ISP27xx+. * qla2xxx: Fix failed NVME port discovery after a short device port loss. * Revert "qla2xxx: Use chip to blink laser for switch timeout" * Revert "qla2xxx: update: Use chip to blink laser for switch timeout" * qla2xxx: Correct error handling during initialization failures. * qla2xxx: add error handling for PLOGI ELS passthrough * qla2xxx: update: Use chip to blink laser for switch timeout * qla2xxx: retry Fabric Scan on IOCB queue full. * qla2xxx: fix premature timer expiration * qla2xxx: UPDATE: fix login state machine freeze * qla2xxx: Dual FCP-NVMe target port support * 10.01.00.46.xx.y-k HM 05/14/2019 * 10.01.00.45.xx.y-k HM 05/13/2019 * 10.01.00.44.xx.y-k HM 05/06/2019 * qla2xxx: Add cleanup for PCI EEH recovery * qla2xxx: Fix Crash due to NULL pointer access in qla2x00_sysfs_read_optrom() * qla2xxx: update: Fix DMA error when the DIF sg buffer crosses 4GB boundary * qla2xxx: reject eh_xxx request * qla2xxx: do command completion on abort timeout * qla2xxx: Use chip to blink laser for switch timeout * qla2xxx: fix recursive dead lock * qla2xxx: optimize NPIV tear down process. * 10.01.00.43.xx.y-k HM 04/05/2019 * qla2xxx: Add support for ISP2089 * qla2xxx: remove FW dump on LOOP init error. * 10.01.00.42.xx.y-k HM 03/27/2019 * qla2xxx: fix potential dma_unmap leak * qla2xxx: fix different size dma alloc and unmap * qla2xxx: fix over index of qpair array. * qla2xxx: fix premature mem access. * qla2xxx: fix nvme device discovery * qla2xxx: fix abort timeout race condition. * qla2xxx: fix NVME LS cmd timeout race condition 2/2. * qla2xxx: fix NVME cmd timeout race condition 1/2. * qla2xxx: Remove defer flag to indicate immeadiate port loss * qla2xxx: Further limit FLASH region write access from SYSFS. * qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines. * 10.01.00.41.xx.y-k HM 03/13/2019 * qla2xxx: Silence log messages from Autoconnet script * Revert "qla2xxx: Fix for the null pointer crash." * 10.01.00.40.xx.y-k HM 03/11/2019 * qla2xxx: fix FW resource print error. * qla2xxx: Fix RHBA command time out on link reset. * qla2xxx: Fix crash due to unused NULL CPU pointer * 10.01.00.39.xx.y-k HM 03/06/2019 * qla2xxx: Fix driver unload when FC-NVMe LUNs are connected * qla2xxx: Cleanup redundant qla2x00_abort_all_cmds during unload * qla2xxx: Set remote port devloss timeout to 0 * qla2xxx: update: P2P issue with initiator and target port domains being different * 10.01.00.38.xx.y-k HM 02/27/2019 * scsi: qla2xxx: Delete session for nport id change * qla2xxx: fix N2N link up hang. * qla2xxx: P2P issue with initiator and target port domains being different * qla2xxx: Cleanup unused functions. * qla2xxx: allow irqbalance control in non-MQ mode * qla2xxx: Correct fcport flags handling. * qla2xxx: Use a dedicated interrupt handler for 'handshake-required' ISPs. * qla2xxx: Ensure flash updates return possible failure status through bsg interface. * qla2xxx: Improved secure flash support messages * qla2xxx: Update fcport disc_state only if we could allocate mem. * qla2xxx: Add a shadow variable to hold disc_state history of fcport * qla2xxx: v3: fix corrupt fw dump. 2/2 * qla2xxx: v3: fix corrupt fw dump. 1/2 * 10.01.00.37.xx.y-k HM 02/01/2019 * qla2xxx: Fix for the null pointer crash. * 10.01.00.36.xx.y-k HM 01/31/2019 * qla2xxx: Move disabling T10 DIF feature ealry in probe * qla2xxx: fix fabric scan hang * qla2xxx: Change abort wait_loop from msleep to wait_event_timeout. * qla2xxx: Track release of different command resources on completion. * qla2xxx: Increase the max_sgl_segments to 1024(max supported) to support larger IO size. * qla2xxx: Fix incorrect SFUB length used for Secure Flash Update MB Cmd * qla2xxx: fix Nport ID display value. * qla2xxx: Use correct pointer when calculating FLT checksum * qla2xxx: Added support for MPI and PEP regions for 28XX secure flash update. * qla2xxx: v2: Fix N2N link reset * qla2xxx: fix flag passing error * qla2xxx: Use FC generic update firmware options routine for ISP27xx. * qla2xxx: Avoid setting firmware options twice in 24xx_update_fw_options. * qla2xxx: Reset the FCF_ASYNC_SENT and FCF_ASYNC_ACTIVE flag after processing GPSC command. * qla2xxx: Set the qpair in SRB to NULL when SRB is released. * qla2xxx: Set the SCSI command result before calling the command done. * qla2xxx: Use complete switch scan for RSCN events * qla2xxx: Fix LUN discovery if loop id is not assigned yet by firmware * qla2xxx: prevent multiple active discovery commands per session * scsi: qla2xxx: Delete session for nport id change * 10.01.00.34.xx.y-k HM 12/17/2018 * extras: Clean up build script for FC-NVMe install directive * qla2xxx: Add fix for N2N topology. * qla2xxx: Secure flash update support for ISP28XX. * qla2xxx: Restore WWPN of Physical Port for fabric configuration only for loop down. * qla2xxx: Fix DMA error when the DIF sg buffer crosses 4GB boundary * qla2xxx: Initialize port speed to avoid setting lower speed * 10.01.00.33.xx.y-k HM 12/10/2018 * extras: Silence diff related to nvme scripts with driver install script * 10.01.00.32.xx.y-k HM 12/07/2018 * extras: update FC-NVMe boot script to use single TRADDR * 10.01.00.31.xx.y-k HM 12/04/2018 * 10.01.00.30.xx.y-k SC 11/28/2018 * qla2xxx: Fix for call trace being seen on reboot * Revert "qla2xxx: unable to discover NVME target." * 10.01.00.29.xx.y-k HM 11/21/2018 * qla2xxx: Look for updated FC-NVME enable BIT to enable FC-NVME * 10.01.00.28.xx.y-k HM 11/21/2018 * qla2xxx: Fix for call trace being seen on reboot * 10.01.00.27.xx.y-k HM 11/19/2018 * qla2xxx: Fix issue reading primary region for ISP27xx/28xx * qla2xxx: Remove hardcoded OS value for SPECTER flags * qla2xxx: fix BUS Reset * qla2xxx: Correctly retrieve and interpret active flash regions for 27XX/28XX * 10.01.00.26.xx.y-k HM 11/05/2018 * qla2xxx: fix stale mem access on unload. v2 * Revert "qla2xxx: fix stale mem access on unload." * extras: Add capability to start system service * qla2xxx: fix stale mem access on unload. * qla2xxx: reduce duplicate code. * qla2xxx: Handle the fail case when fail to allocate memory for CT req and rsp. * qla2xxx: Change SRB allocation flag to ATOMIC to avoid sleeping in IRQ context. * 10.01.00.25.xx.x-k HM 10/20/2018 * extras: Updated Build script for FC-NVMe Discovery * extras: Add Auto-connect scripts for FC-NVMe * qla2xxx: Add sysfs hooks for FC-NVMe autoconnect * qla2xxx: Fix unload when NVMe devices are configured * qla2xxx: performance enhancement for ISP 28XX Target mode. * qla2xxx: tweak error code for bsg_request. * qla2xxx: reject garble setting for speed and qlini_mode * qla2xxx: performance enhancement for nvme * qla2xxx: Send Marker for each QPair. * qla2xxx: move marker request behind qpair * 10.01.00.24.xx.x-k HM 10/15/2018 * qla2xxx: Correctly report max/min supported speeds for Mach adapter * qla2xxx: Fix flash pri/sec image selection bug * qla2xxx: Add 28xx flash primary/secondary refreshing * qla2xxx: Add 28xx flash primary/secondary status/image mechanism * qla2xxx: Fix Use after free case while issuing Async TM command * qla2xxx: no MB IOCB during chip down * qla2xxx: Fix message to indicated Vectors used by driver * scsi: qla2xxx: don't allow negative thresholds * scsi: qla2xxx: Fix comment in MODULE_PARM_DESC in qla2xxx * scsi: qla2xxx: Remove set but not used variable 'ptr_dma' * scsi: qla2xxx: fix typo "CT-PASSTRHU" -> "CT-PASSTHRU" * qla2xxx: move error message behind error case. * scsi: qla2xxx: Add debug knob for user control workload * 10.01.00.23.xx.x-k JC 9/29/2018 RHEL7.6, SLES12.4, SLES15 * Fixed build issue. * 10.01.00.22.xx.x-k JC 9/25/2018 RHEL7.6, SLES12.4, SLES15 * qla2xxx: aggregated compile error fix ups. * qla2xxx: fix duplicate switch DB entries. * Revert "qla2xxx: fix duplicate switch's Nport ID entries." * qla2xxx: unable to discover NVME target. * qla2xxx: Move debug log messages which dereference SRB structure before issuing the command to firmware. * qla2xxx: Fix for double free of SRB structure used in Async switch query commands. * qla2xxx: fix double increment of switch scan retry count. * qla2xxx: fix duplicate switch's Nport ID entries. * qla2xxx: Schedule worker to process response queue * Revert "qla2xxx: Fix process response queue for ISP26XX and above" * qla2xxx: Enable Target mode for ISP28XX * qla2xxx: remove debug trace * qla2xxx: Do not set dev_loss_tmo while unregistering remote nvme port. * qla2xxx: Initialize atio request queue length. * qla2xxx: fix command premature free. * qla2xxx: Reject bsg request if chip is down. * qla2xxx: shutdown chip if reset fail * qla2xxx: fix stuck session in PLOGI state * qla2xxx: fix early srb free on abort * qla2xxx: Add mode control for each physical port. * qla2xxx: fix cleanup race condition * qla2xxx: fix dropped srb resource. * qla2xxx: fix port speed display on chip reset * qla2xxx: fix recursive mailbox timeout * qla2xxx: Check for Register disconnect, during adapter shutdown process. * 10.01.00.21.xx.x-k JC 8/21/2018 RHEL7.6, SLES12.4, SLES15 * Revert "qla2xxx: send nvme disconnect message to udev" * Revert "qla2xxx_udev: nvme disconnect" * qla2xxx: fix nvme session hang on unload * 10.01.00.20.xx.x-k JC 8/9/2018 RHEL7.5, SLES12.3, SLES15 * qla2xxx: Added retpoline support. * qla2xxx: Fixed module parameter for ql2xnvmeenable * extras: Fix qlssen.sh build initrd for SLES15. * extras: Fix udev bash command lines to use $PATH * qla2xxx: Added file Module.supported. RHEL7.5 * scsi: qla2xxx: fix MSI-X vector affinity * 10.01.00.19.xx.x-k JC 8/6/2018 RHEL7.5, SLES12.3, SLES15 * extras: Fix usage of find in build.sh * qla2xxx: Fix for FC-NVMe discovery for NPIV port * qla2xxx: Set FC-NVMe feature to disabled as default * qla2xxx: fix tape device re-connect * 10.01.00.18.xx.x-k JC 7/26/2018 RHEL7.5, SLES12.3, SLES15 * qla2xxx: Return error when TM returns an error from firmware * qla2xxx: move abort code behind qpair * qla2xxx: extend abort timeout value * qla2xxx: fix srb's ref_count get race condition * qla2xxx: Fix memory leak for allocating abort IOCB. v2 * qla2xxx: Enable FC-NVME on NPIV ports * qla2xxx: Fix NPIV handling for FC-NVMe * qla2xxx: use correct vp_idx for NPIV * qla2xxx: Fix vha access for FC-NVMe * qla2xxx: Fix erroneous session deletion * qla2xxx: Update: Fix NPORT ID display for N2N Direct connect * qla2xxx: back port IS_SW_RESV_ADDR * 10.01.00.17.07.5-k JC 7/26/2018 * qla2xxx: Add case for 28xx transfer rate. * qla2xxx: Correct ISP filter for invalid SFP. * qla2xxx: Add signature for 28xx flash image. * qla2xxx: Include 28xx in abort isp cleanup. * qla2xxx: Fix flash/nvram addressing. * Revert "qla2xxx: Fix memory leak for allocating abort IOCB" * 10.01.00.16.07.5-k JC 7/11/2018 * qla2xxx: Fix memory leak for allocating abort IOCB * qla2xxx: Fix MBX failure during driver unload for FCoE adapter * qla2xxx: silent warning in freeirq * qla2xxx_udev: nvme disconnect * qla2xxx: send nvme disconnect message to udev * qla2xxx: on session delete return nvme cmd * qla2xxx: fix N2N inifinite retry loop * qla2xxx: Remove stale ADISC_DONE event * qla2xxx: Shutdown Chip on unload. * qla2xxx: back port fw_started flag from upstream * qla2xxx: wait for session deletion done for npiv * qla2xxx: no isp recovery on unload * qla2xxx: fix uninit list head (sp->elem) * 10.01.00.15.07.5-k JC 6/25/2018 * qla2xxx: Fix NPORT ID display for N2N Direct connect * 10.01.00.14.07.5-k HM 6/24/2018 * qla2xxx: Fix spinlock resuctsion in qlt_reset() * qla2xxx: Fix process response queue for ISP26XX and above * qla2xxx: Fix NULL pointer derefrence for fcport search * qla2xxx: Fix kernel crash due to late workqueue allocation * qla2xxx: Alow nvme underrun to be handled transport. * qla2xxx: Fix inconsistent DMA mem alloc/free * qla2xxx: Fix Remote port registration * qla2xxx: Remove Stale code from update_fw_options() settings * 10.01.00.12.07.5-k HM 6/15/2018 * qla2xxx: Retry Loop resync when req/rsp is not setup * qla2xxx: Fix NVMe Discovery * qla2xxx: Fix SF_SCANNING flag for async_gnnft * qla2xxx: Fix login_retry count * qla2xxx: Update:qla2xxx: move command alloc to tcm_qla2xxx * qla2xxx: move command alloc to tcm_qla2xxx * qla2xxx: Fix double free of sp * qla2xxx: assign NULL to dpc_thread before unloading to prevent crash * qla2xxx: Fix crash for get_qpair() * qla2xxx: Remove extra lock to reduce contention * qla2xxx: fix sp->vha assignment problem * qla2xxx: Reduce holding sess_lock to prevent CPU lock-up * qla2xxx: Move qla2x00_start_sp behind qpair * qla2xxx: Move {get|rel}_sp to base_qpair struct * qla2xxx: Updated: Zio6 interrupt threashold * 10.01.00.11.07.5-k HM 6/07/2018 * qla2xxx: zio6 interrupt threshold * qla2xxx: UPDATE: serialize user space mailbox access. * qla2xxx: firmware option 3 is clobbered by speed set * qla2xxx: fix out of order Termination and ABTS Resp * qla2xxx: fix missing mutex_unlock * qla2xxx: remove unneccessary byte swap * scsi: qla2xxx: Fix incorrect handle for abort IOCB * scsi: qla2xxx: Fix queue ID for async abort with Multiqueue * qla2xxx: add detection of ABTS hang * qla2xxx: fix ABTS response completion * qla2xxx: serialize user space mailbox access. * qla2xxx: allow speed set before chip is on * qla2xxx: Tweak debug info for invalid RX_ID * qla2xxx: fix deadlock between atio & hw lock * qla2xxx: remove redundant call to mark port lost * qla2xxx: fix double Rport * qla2xxx: serialize mailbox call. * qla2xxx: fix erroneous debug log. * qla2xxx: Add beacon LED config sysfs interface. * qla2xxx: Add support for setting port speed * qla2xxx: holding off chip reset until target mode is enabled * qla2xxx: Terminate Plogi/PRLI if WWN is 0 * qla2xxx: fix deadlock between qla & target core drivers * qla2xxx: Fix iIDMA error * qla2xxx: Remove all rports if fabric scan retry fails * qla2xxx: Force fw cleanup on ADISC error * qla2xxx: Turn off IOCB timeout timer on IOCB completion * qla2xxx: Decrement login retry count for only plogi * qla2xxx: Move rport registration out of internal work_list * qla2xxx: Remove redundant check for fcport deletion * qla2xxx: Update rscn_rcvd field to more meaningful scan_needed * qla2xxx: Use correct qpair for abort and cmd * extras: Fixed find syntax in build.sh * qla2xxx: Fix race between switch cmd completion and timeout * qla2xxx: Flush mailbox commands on chip reset * qla2xxx: Fix unintended Logout * qla2xxx: Fix session state stuck in Get Port DB * qla2xxx: Fix redundant fc_rport registration * qla2xxx: Silent erroneous message * qla2xxx: Prevent SysFS access when chip is down * qla2xxx: Add longer window for Chip reset * qla2xxx: Fix login retry count * qla2xxx: Fix setting lower transfer speed if GPSC fails * scsi: qla2xxx: Fix TMF and Multi-Queue config * 10.01.00.10.07.5-k HM 6/05/2018 * qla2xxx: fix merge error * qla2xxx: migrate NVME N2N handling into state machine * qla2xxx: save frame payload size * qla2xxx: fix N2N link re-connect * 10.01.00.09.xx.y-k JC 5/24/2018 * scsi: qla2xxx: remove the unused tcm_qla2xxx_cmd_wq * scsi: qla2xxx: Remove stale debug value for login_retry flag * scsi: qla2xxx: Use predefined get_datalen_for_atio() inline function * scsi: qla2xxx: Fix Inquiry command being dropped in Target mode * scsi: qla2xxx: Move GPSC and GFPNID out of session management * scsi: qla2xxx: Reduce redundant ADISC command for RSCNs * scsi: qla2xxx: Delete session for nport id change * scsi: qla2xxx: Fix Rport and session state getting out of sync * scsi: qla2xxx: Fix sending ADISC command for login * scsi: qla2xxx: Correct setting of SAM_STAT_CHECK_CONDITION * scsi: qla2xxx: correctly shift host byte * scsi: qla2xxx: Fix race condition between iocb timeout and initialisation * scsi: qla2xxx: Avoid double completion of abort command * scsi: qla2xxx: Fix small memory leak in qla2x00_probe_one on probe failure * scsi: qla2xxx: fx00 copypaste typo * scsi: qla2xxx: fix error message on "existent" * scsi: qla2xxx: Use dma_pool_zalloc() * scsi: qla2xxx: Remove unused symbols * scsi: qla2xxx: Use %p for printing pointers * scsi: qla2xxx: Remove FC_NO_LOOP_ID for FCP and FC-NVMe Discovery * scsi: qla2xxx: Fix crashes in qla2x00_probe_one on probe failure * scsi: qla2xxx: Fix FC-NVMe LUN discovery * scsi: qla2xxx: ensure async flags are reset correctly * scsi: qla2xxx: do not check login_state if no loop id is assigned * scsi: qla2xxx: Fixup locking for session deletion * scsi: qla2xxx: Fix NULL pointer crash due to active timer for ABTS * scsi: qla2xxx: Fix double free bug after firmware timeout * scsi: qla2xxx: Fix a locking imbalance in qlt_24xx_handle_els() * scsi: qla2xxx: Avoid triggering undefined behavior in qla2x00_mbx_completion() * scsi: qla2xxx: Add XCB counters to debugfs * scsi: qla2xxx: Fix warning during port_name debug print * scsi: qla2xxx: Fix warning in qla2x00_async_iocb_timeout() * scsi: qla2xxx: Fix recursion while sending terminate exchange * scsi: qla2xxx: remove redundant assignment of d * scsi: qla2xxx: Use zeroing allocator rather than allocator/memset * scsi: qla2xxx: Serialize session deletion by using work_lock * scsi: qla2xxx: Prevent relogin trigger from sending too many commands * scsi: qla2xxx: Prevent multiple active discovery commands per session * scsi: qla2xxx: Add retry limit for fabric scan logic * scsi: qla2xxx: Delay loop id allocation at login * scsi: qla2xxx: Increase verbosity of debug messages logged * scsi: qla2xxx: Allow relogin and session creation after reset * scsi: qla2xxx: Add ability to use GPNFT/GNNFT for RSCN handling * scsi: qla2xxx: Properly extract ADISC error codes * scsi: qla2xxx: Fix GPNFT/GNNFT error handling * scsi: qla2xxx: Remove session creation redundant code * scsi: qla2xxx: Migrate switch registration commands away from mailbox interface * scsi: qla2xxx: Fix login state machine freeze * scsi: qla2xxx: Reduce trace noise for Async Events * scsi: qla2xxx: Reduce the use of terminate exchange * scsi: qla2xxx: Add lock protection around host lookup * scsi: qla2xxx: Add switch command to simplify fabric discovery * scsi: qla2xxx: Use known NPort ID for Management Server login * scsi: qla2xxx: Fix session cleanup for N2N * scsi: qla2xxx: Tweak resource count dump * scsi: qla2xxx: Allow target mode to accept PRLI in dual mode * scsi: qla2xxx: Don't call dma_free_coherent with IRQ disabled. * scsi: qla2xxx: Add ability to send PRLO * scsi: qla2xxx: Add option for use reserve exch for ELS * scsi: qla2xxx: Use shadow register for ISP27XX * scsi: qla2xxx: Enable ATIO interrupt handshake for ISP27XX * scsi: qla2xxx: Move work element processing out of DPC thread * scsi: qla2xxx: Replace GPDB with async ADISC command * scsi: qla2xxx: Relogin to target port on a cable swap * scsi: qla2xxx: Chip reset uses wrong lock during IO flush. * scsi: qla2xxx: Add boundary checks for exchanges to be offloaded * scsi: qla2xxx: Use chip reset to bring down laser on unload. * scsi: qla2xxx: Use IOCB path to submit Control VP MBX command * scsi: qla2xxx: Fix smatch warning in qla25xx_delete_{rsp|req}_que * scsi: qla2xxx: remove duplicate includes * scsi: qla2xxx: Fix memory leak in dual/target mode * scsi: qla2xxx: Fix system crash in qlt_plogi_ack_unref * scsi: qla2xxx: Clear loop id after delete * scsi: qla2xxx: Fix scan state field for fcport * scsi: qla2xxx: Replace fcport alloc with qla2x00_alloc_fcport * scsi: qla2xxx: Fix PRLI state check * scsi: qla2xxx: Fix NPIV host cleanup in target mode * scsi: qla2xxx: Move session delete to driver work queue * scsi: qla2xxx: Fix gpnid error processing * 10.01.00.08.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Fix NULL pointer crash with FC-NVMe LUNs during unload. * 10.01.00.07.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Add fix to free dma memory. * qla2xxx: Mask off Scope bits in retry delay. * 10.01.00.06.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Remove module parameter ql2xqos_priority_test. * qla2xxx: Add ability to process multiple CT-PT SGE's. * 10.01.00.05.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Simplification of register address used in qla_tmpl.c. * qla2xxx: Correction and improvement to fwdt processing. * qla2xxx: Add correction to RDP FW support logic. * qla2xxx: serialize sess free * qla2xxx: serialize session deletion * qla2xxx: prevent re_login trigger from sending too many commands * qla2xxx: prevent multiple active discovery commands per session * qla2xxx: Add log message for bbcr. * qla2xxx: Remove alias names for QoS module parameters. * 10.01.00.04.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Correction to non-existant fabric name. * qla2xxx: Handle cases for limiting RDP response payload length. * qla2xxx: Add qos fcport test mode. * qla2xxx: Optimized logs for searching qos fcport table. * qla2xxx: Correction to tests for iocb fabric and fcport qos. * qla2xxx: Correction to function qla26xx_read_qos_fcport_table(). * qla2xxx: Correction to MB in-direction selection in qla2x00_echo_test(). * qla2xxx: Correction to selection of loopback/echo test. * qla2xxx: Allow 27xx and 28xx to do bidirectional commands. * qla2xxx: Add RDP/ABTS deferred processing for vp's. * qla2xxx: Add deferred queue for processing ABTS and RDP. * qla2xxx: Cleanup ELS/PUREX iocb fields. * qla2xxx: Rename QoS table row type and cleanup log prints. * qla2xxx: Optimize reading of QoS fcport table. * qla2xxx: Fixup/cleanup of QoS table index code. * qla2xxx: Minor cleanup of flash calls reoganization. * qla2xxx: Optimize flash register routines. * qla2xxx: Fixup flash register routines. * qla2xxx: Add debug prints to write flash routine. * qla2xxx: Simplify flash slow write log messages. * qla2xxx: Simplify NPIV create log messages. * qla2xxx: Simplify D-Port Diagnostics log messages. * qla2xxx: Cleanup log message for fwdt allocate. * qla2xxx: Add non-verbose SFP detail print. * qla2xxx: Quieten FEC=enabled message. * qla2xxx: Use interrupt pin number for port number. * 10.01.00.03.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Correction to EFT selection. * qla2xxx: Correction to flash write routine. * qla2xxx: Add correction to FW image selection. * 10.01.00.02.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Convert FLT flash reads to register method. * qla2xxx: Undo the replacements to ->optrom_read() calls. * qla2xxx: Flash reading routines cleanups. * qla2xxx: Make flash write avoid register banging. * 10.01.00.01.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Use registers for reading unaligned flash offset. * qla2xxx: Fix PCI header and data struct addresses. * qla2xxx: Fix and cleanup ROM code version string reading. * qla2xxx: Corrections to flt->region addresses. * qla2xxx: Add debug buffer dump for INITFW MBC. * qla2xxx: Add debug logs for QoS sorting/searching. * qla2xxx: Use ->isp_ops->read_optrom() in qla26xx_read_qos_fcport_table(). * qla2xxx: QoS fcport table index initialization improvement. * qla2xxx: Add QoS fcport table index to speed up search. * qla2xxx: Reduce stack on qos fcport priority routines. * qla2xxx: Add conditionals to avoid fcport QoS when it is not enabled. * qla2xxx: Fix mis-pointing buffer in qla24xx_load_risc_flash(). * qla2xxx: Provide Makefile CPP define for MoB testing. * qla2xxx: Fixup flash region code struct. * qla2xxx: Fixup msix/msi vector selection. * 10.01.00.00.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: Add dump buffer print when nvram checksum fails. * qla2xxx: Refactor character signature compares into memcmp's. * qla2xxx: Replace 0x%x with %#x in all format strings. * qla2xxx: Normalize all flash reads to always use the dump ram mbc. * qla2xxx: Flash image validation cleanups. * qla2xxx: Add error test after dma_map_single. * qla2xxx: Add support for ISP28XX. * qla2xxx: Add devid's and conditionals for 28xx. * qla2xxx: Minor cleanup regarding device type. * qla2xxx: Improve, correct, simplify fwdt endianess handling. * qla2xxx: Use endian macros to assign dynamic fields in fwdump buffer. * qla2xxx: Use endian macros to assign static fields in fwdump header. * qla2xxx: Add endianizers to 27xx firmware image validator. * qla2xxx: Add new fwdt entry types. * qla2xxx: Leave fwdt endianess alone. * qla2xxx: Isolate test for valid firmware image. * qla2xxx: Add support for multiple fwdump templates/segments. * qla2xxx: Fix routine qla27xx_dump_mpi_ram(). * qla2xxx: Fix routine qla27xx_dump_ram(). * qla2xxx: Remove fwdt default template. * 10.00.00.60.xx.y-k RHEL7.5, SLES12.3 NVME * qla2xxx: nvme features developed/added. 2. Known Issues None at this time. 3. Notices Information furnished in this document is believed to be accurate and reliable. However, CAVIUM INC. assumes no responsibility for its use, nor for any infringements of patents or other rights of third parties which may result from its use. CAVIUM INC. reserves the right to change product specifications at any time without notice. Applications described in this document for any of these products are only for illustrative purposes. CAVIUM INC. makes no representation nor warranty that such applications are suitable for the specified use without further testing or modification. CAVIUM INC. assumes no responsibility for any errors that may appear in this document. 4. Contacting Support For further assisance, contact Cavium Technical Support at: http://support.cavium.com Trademarks Accelera, Accelerating Cluster Performance, InfiniCon Systems, InfiniNIC, InfiniPath, InfiniView, QLA, QLogic, the QLogic logo, ReadyPath, SANdoctor, SANsurfer, and SilverStorm are registered trademarks of CAVIUM INC. All other brand and product names are trademarks or registered trademarks of their respective owners. (c) Copyright 2018. All rights reserved worldwide. Cavium and the Cavium logo are registered trademarks of CAVIUM INC. All other brand and product names are trademarks or registered trademarks of their respective owners.