# changelog

author: andavis@suse.com
changelog:
  -Version 1.10.1-216.0.169.4 build for SLES 15 SP2 bsc 1173176
    >>>>>>> ./broadcom-bnxt_en.changes.r40


author: Siva Reddy Kallam <siva.kallam@broadcom.com> 3.137v
changelog:
  - Backport upstream patches  (Severity:Medium)
  - Add PHY reset workaround in change MTU path for 5717/19/20  (Severity:Medium)
  - Update the copyright (Severity:Minor)


author: Siva Reddy Kallam <siva.kallam@broadcom.com> 3.137w
changelog:
  - Add SLES 15 support  (Severity:Medium)
  - Add RHEL 7.5 support (Severity:Medium)
  - Fix RHEL 6.4 compilation (Severity:Medium)


author: Siva Reddy Kallam <siva.kallam@broadcom.com> 3.137x
changelog:
  - Add Ubuntu 18.04 support  (Severity:Minor)
  - Fix race between tg3_get_stats64() and tg3_free_consistent() (Severity:Minor)
  - Avoid usleep_range() with holding spin lock (Severity:Minor)


author: Emulex Automated Build User
changelog:
  - Changed version to 10.7
  - Added support for RHEL 6U8
  - Added support for RHEL 7U2
  - Added support for SLES12 SP1


author: Emulex Automated Build User
changelog:
  - Changed version to 11.1
  - Added support for RHEL 7U3
  - Added support for SLES 12 SP2
  - Removed support for RHEL 6U5


author: Broadcom Automated Build User
changelog:
  - Changed version to 11.2
  - Added support for RHEL 6U9
  - Added support for RHEL 7U4
  - Added support for SLES 12 SP3
  - Removed support for RHEL 7U0
  - Removed support for SLES 12 SP0


author: Broadcom Automated Build User
changelog:
  - Changed version to 11.4
  - Removed support for RHEL 6U6
  - Removed support for RHEL 7U1
  - Added support for RHEL 7U5
  - Added support for SLES 15 SP0


author: Broadcom Automated Build User
changelog:
  - Changed version to 12.0
  - Removed support for RHEL 6U7
  - Removed support for SLES 12 SP1
  - Added support for RHEL 6U10
  - Added support for RHEL 7U6
  - Added support for RHEL 8U0
  - Added support for SLES 12 SP4
  - Added support for SLES 15 SP1


author: Broadcom Automated Build User
changelog:
  - Changed version to 12.2
  - Removed support for SLES 11 SP3
  - Removed support for SLES 11 SP4
  - Removed support for RHEL 6U8
  - Removed support for RHEL 7U2
  - Removed support for RHEL 7U3


author: Broadcom Automated Build User
changelog:
  - Changed version to 12.4
  - Added support for RHEL 7U7
  - Added support for RHEL 8U1
  - Added support for SLES 12 SP5
  - Removed support for RHEL 6U9
  - Removed support for RHEL 6U10
  - Removed support for RHEL 7U4


author: Broadcom Automated Build User
changelog:
  - Changed version to 12.6
  - Added support for RHEL 7U8
  - Added support for RHEL 8U2
  - Added support for SLES 15 SP2
  - Removed support for SLES 12 SP2
  - Removed support for SLES 12 SP3


author: lance.ortiz@suse.com
changelog:
  -New version intel-i40e-2.7.29
  - also added the 12 sp2 version of i40iw since that version won't
  - build without it.  Working on spec file to cover all versions


author: lance.ortiz@suse.com
changelog:
  -New version intel-i40e-2.9.21
  - Still and issue with building SLES15 SP1.  Spec file was
  - modified so that SP1 builds.  Issue is with i40iw driver


author: lance.ortiz@suse.com
changelog:
  - New version i40e 2.13.10.11
  - brings in 'no-op' i40iw driver to break i40iw/i40e symbol dependency


author: sbahling@suse.com
changelog:
  - Make tar file really bzip2 compressed. It was a gzip labeled as
    .bz2
  - Add Makefile.diff to ensure we get the kompat code during
    SolidDriver builds


author: QLogic Cavium Build environment
changelog:
  - Version 8.18.18.0
  - Added missing support to configure 1G speed via ethtool
  - Fixed calculation of number of ooo rx buffers and limit to 16K

  - Version 8.18.17.0-1
  - iWARP - Handle flush completion on unaligned ll2 connection
  - Add dp_module, dp_level as modparams
  - Add Kconfig file for upstream builds

  - Version 8.18.16.0-1
  - Fix missing return error code check on call to qedi_setup_int
  - Modify different module params
  - Add log message in the driver unload path
  - Fail all non-timesync related ioctls

  - Version 8.18.15.0-1
  - Added wwpn and wwnn to the FCoE dev-info
  - Validate chap and mutual chap auth correctly

  - Version 8.18.14.0-1
  - Fix error handling flow in TX path
  - Fix error handling flow in RX path
  - Implement get_protocol_tlv_data callback


author: QLogic Corp <support@qlogic.com> 10.01.00.64.15.2-kb-1
changelog:
  - 10.01.00.63.xx.y-k1 AE 04/20/2020
  Fixes
  - qla2xxx: Fix gcc test compile error output being printed.
  - qla2xxx: Fix MPI reset needed message.
  - ER146505 qla2xxx: Fix WARN_ON in qla_nvme_register_hba.
  - qla2xxx: Timestamp device online and offline transitions.
  - qla2xxx: Allow ql2xextended_error_logging special value 1 to be set anytime.
  - qla2xxx: Add rport fields in debugfs.
  - qla2xxx: Make tgt_port_database available in initiator mode.
  - ER147027 qla2xxx: reduce noisy debug message.
  - ER146925 qla2xxx: Fix mailbox Ch erroneous error
  - ER146966 qla2xxx: fix login timeout.
  - qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV.
  - ER147014 qla2xxx: Fix I/O errors during LIP reset tests.
  - qla2xxx: Accomodate for SCM FW attribute bit change.
  - qla2xxx: post FC event (FPIN) to transport FPIN handler.
  - qla2xxx: Hide fc_host_fpin_rcv kernel dependency.
  - qla2xxx: Add changes to compile across various kernels.
  - qla2xxx: Use active targets to update SCM stats.
  - qla2xxx: Move SCM functions to qla_isr to keep changes local.
  - ER147021 qla2xxx: Enable PUREX passthru post ISP reset.

  - 10.01.00.62.xx.y-k1 AE 03/20/2020
  Fixes
  - ER146838 qla2xxx: fix null ptr access in free fcport
  - ER146043 qla2xxx: Indicate correct supported speeds for Mezz card.
  - ER146043 qla2xxx: Reduce duplicate code in reporting speed.
  - ER146688 qla2xxx: Fix memory size truncation
  - ER146569 qla2xxx: Set Nport ID for N2N
  - ER146362 qla2xxx: fix mtcp dump collection failure.
  - scsi: qla2xxx: fix fcport null pointer access.
  - qla2xxx: Add host attribute to trigger MPI hang.
  - qla2xxx: performance tweak

  - 10.01.00.61.xx.y-k1 QT 03/15/2020
  Fixes
  - qla2xxx: Fix incorrect region-size setting in optrom SYSFS routines.

  - 10.01.00.60.xx.y-k1 AE 02/05/2020
  Fixes
  - qla2xxx: Fix compile error that occurs on some distros.

  - 10.01.00.59.xx.y-k1 HM 01/31/2020
  Enhancements:
  - SAN Congestion Management

  The qla2xxx driver has the ability participate in SAN Congestion
  Management wherein when the driver receives an FPIN ELS, it
  forwards the ELS payload to the fc_transport to process
  the notification.

  In addition, the driver also tracks the error stats internally which
  is used by our application to display the information to the SAN
  administrator.

  Fixes
  - qla2xxx: Script changes to collect MPI firmware dump.
  - qla2xxx: Fix MPI failure AEN (8200) handling.
  - qla2xxx: Honor status qualifier in FCP_RSP per spec.
  - qla2xxx: Handle NVME status iocb correctly.
  - qla2xxx: Allow dev_loss_tmo setting for FC-NVMe devices.
  - qla2xxx: Setup debugfs entries for remote ports.
  - qla2xxx: Fix I/O failures during remote port toggle testing.

  - 10.01.00.58.xx.y-k1 HM 01/29/2020
  Enhancements:
  - None

  Fixes
  - scsi: qla2xxx: Fix unbound NVME response length

  1 Inbox RHEL 7.8 - Kernel panic
  while running IOs with NetApp's
  pNate suite with NULL pointer
  deference.

  Resolution: When a NVMe command is completed with status
  of data underrun, driver will copy data size
  indicated in response payload without verifying
  lenght. This fix will make sure driver checks
  for the length and if its greated than response
  payload, sets buffer size to response size.


  - 10.01.00.57.xx.y-k1 HM 01/21/2020
  Enhancements:
  - None

  Fixes
  - qla2xxx: flush IO on zone disable.

  1 L1-121 - RH81 Inbox -QLogic - system
  crashes during perturbation tests

  Resolution: Customer do Zone disable test. Driver gets 
  failure from Fabric scan commands. Driver 
  fail to flush all session when switch scan
  failed. This leave multipath driver in a hung
  state. Driver needs to flush all sessions to
  allow multipath to fail over.

  - 10.01.00.56.xx.y-k1 HM 01/16/2020
  Enhancements:
  - None

  Fixes
  - qla2xxx: flush all sessions on zone disable
  - scsi: qla2xxx: unregister ports after GPN_FT failure
  - qla2xxx: Fix crash during device discovery.

  1 L1-121 - RH81 Inbox -QLogic - system
  crashes during perturbation tests

  Resolution: Customer do Zone disable test. Driver gets 
  failure from Fabric scan commands. Driver 
  fail to flush all session when switch scan
  failed. This leave multipath driver in a hung
  state. Driver needs to flush all sessions to
  allow multipath to fail over.

  - 10.01.00.55.xx.y-k1 HM 10/29/2019
  Enhancements:
  - None

  Fixes
  - qla2xxx: re-PLOGI on PRLI NVME failure

  1 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

  1 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-k1 HM 10/05/2019
  - qla2xxx: v2: Fix partial flash write of MBI

  - 10.01.00.53.xx.y-k1 HM 09/18/2019
  - qla2xxx: ONEOFF: silent dbg messages for good path io.
  - 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-k1 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-k1 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

  - 10.01.00.50.xx.y-k1 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
  - qla2xxx: ONEOFF: fix pDIF detection

  - 10.01.00.49.xx.y-k1 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
  - qla2xxx: ONEOFF: add debug counters for T10-PI/DIF
  - qla2xxx: ONEOFF: add MQ support for HP3PAR propritary T10-PI

  - 10.01.00.48.xx.y-k1 HM 06/01/2019
  - qla2xxx: update: fix premature timer expiration

  - 10.01.00.47.xx.y-k1 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-k1 HM 05/31/2019
  - qla2xxx: Fix compile failure for the DIF changes

  - 10.01.00.45.xx.y-k1 HM 05/15/2019
  - qla2xxx: Fix compile failure for the DIF changes

  - 10.01.00.45.xx.y-k1 HM 05/13/2019
  - qla2xxx: Add Vendor specific DIF for qla2xxx_mqueuecommand()
  - qla2xxx: update: Implement LUN level DIF for 3PAR array

  - 10.01.00.44.xx.y-k1 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-k1 HM 04/05/2019
  - qla2xxx: Add support for ISP2089
  - qla2xxx: remove FW dump on LOOP init error.

  - 10.01.00.42.xx.y-k1 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-k1 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-k1 HM 03/11/2019
  - qla2xxx: fix FW resource print error.
  - qla2xxx: Fix RHBA command time out on link reset.

  - 10.01.00.39.xx.y-k1 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-k1 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-k1 HM 02/01/2019
  - qla2xxx: Fix for the null pointer crash.

  - 10.01.00.36.xx.y-k1 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-k1 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.

  - 10.01.00.33.xx.y-k1 HM 12/10/2018
  - extras: Silence diff related to nvme scripts with driver install script

  - 10.01.00.32.xx.y-k1 HM 12/07/2018
  - extras: update FC-NVMe boot script to use single TRADDR

  - 10.01.00.31.xx.y-k1 HM 12/04/2018
  SLES15, SLES12 SP4
  - qla2xxx: Snoop inquiry response atleast 168 bytes to determine proprietary DIF

  - 10.01.00.30.xx.y-k1 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-k1 HM 11/21/2018
  - qla2xxx: Look for updated FC-NVME enable BIT to enable FC-NVME

  - 10.01.00.28.xx.y-k1 HM 11/21/2018
  - qla2xxx: Fix for call trace being seen on reboot

  - 10.01.00.27.xx.y-k1 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.x-k1 HM 11/05/2018
  RHEL7.6, SLES12.4, SLES15
  - qla2xxx: Demote log message 0x3079 to ql_dbg_io.
  - qla2xxx: Snoop inquiry response atleast 168 bytes to determine proprietary DIF
  - qla2xxx: Demote log message 0x3079 to ql_dbg_io.
  - qla2xxx: Snoop Inquiry response spanning multiple scatter/gather elements.
  - qla2xxx: Track if INQ was sent, and send INQ to all luns.
  - qla2xxx: Reset the PROT bit in the cdb.
  - qla2xxx: Make fcport a pointer in qlt_free_session_done().
  - qla2xxx: Implement LUN level DIF for 3PAR array.
  - qla2xxx: T10-DIF: Fix ref tag errors reported for CAW command.
  - qla2xxx: Disable standard DIF for arrays advertising proprietary DIF.
  - qla2xxx: Reset PROTECT bit only in standard INQUIRY response.
  - qla2xxx: Check if the INQ response buffer is > 170 (instead of >=).
  - qla2xxx: Fix invalid offset reference of inquiry response data.
  - qla2xxx: Correct modinfo text for ql2xenablehba_err_chk.
  - qla2xxx: Fix modinfo text for ql2xenabledif and ql2xenabledif_tgt.
  - qla2xxx: set ql2xenabledif_tgt enabled by default.
  - qla2xxx: Handle INQ data changed check condition.
  - qla2xxx: Parameterize ql2xenabledif_tgt (defaulted to zero).
  - qla2xxx: Unparameterize ql2xenabledif_tgt (leave as global variable zeroed).
  - qla2xxx: Fix for issue where the scsi status was getting overwritten.
  - qla2xxx: Fail module load on user config errors.
  - qla2xxx: Check for success of INQ response before parsing.
  - qla2xxx: Check for INQ response validity before parsing the response.
  - qla2xxx: Control vendor T10 DIF via ql2xenabledif_tgt module parameter.
  - qla2xxx: Mark DIF errors from target as re-tryable errors.
  - qla2xxx: Remove extraneous debug messages.
  - qla2xxx: Mark DIF errors from target as re-tryable errors.
  - qla2xxx: Do not turn off T10 DIF on a port reset.
  - qla2xxx: Add routines to get LBA from the SCSI CDB.
  - qla2xxx: Enable T10 DIF for reads as well.
  - qla2xxx: Enable SCSI T10 DIF registration during driver probe.
  - qla2xxx: Initial check-in for vendor T10 DIF.


  - 10.01.00.26.xx.x-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 <qla2400
  - scsi: qla2xxx: Fix Async GPN_FT for FCP and FC-NVMe scan
  - scsi: qla2xxx: fix spelling mistake: "existant" -> "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.


author: QLogic Corp <support@qlogic.com> 10.02.02.00.a16-k-1
changelog:
  - 10.02.02.00.a16-k BH 11/19/2020

  - ERXXXXXX: qla2xxx: SCMR: Queue depth based throttling.
  - ERXXXXXX: qla2xxx: SCMR: Detect & manage fast tgt

  - 10.02.02.00.a15-k BH 11/12/2020

  - ER147875: Driver unload post the isolated port causes server crash
  Chnage: qla2xxx: If fcport is undergiong deletion return IO with retry.

  - ERXXXXXX: qla2xxx: SCM: Address a peer congestion throttling issue.
  - ERXXXXXX: qla2xxx: Fix race between fw dump reset and isolate port.
  - ERXXXXXX: qla2xxx: Updated README file for new module parameters

  - 10.02.02.00.a14-k BH 11/06/2020

  - qla2xxx: SCM: Algorithm enhancements.
  1. Implement a 100ms timer to help throttle at 100ms granularity instead of 1 sec.
  2. Mechanism to detect IO workload and throttle based on IOPS for IOPS intensive 
  workload, and switch to using MBPS for lower IOPS workload.
  3. Define a lower bound for IOPS/MBPS below which throttling will not be initiated.

  - ER146725: eDIF another driver panic running script: ./test_target_no_unload.sh
  Change: qla2xxx: 1 Fix crash in qla_nvme_abort_set_option.

  - ER147825: issue w,r,t PPC BE-QLE2782 adapter, Fw flash failed with 2.4.0. build 12 release
  Change: qla2xxx: 1 Fix flash update in 28XX adapters on big endian machines.

  - ER147771: Call Trace while shutting down the adapter ports (LINK DOWN).
  Change: qla2xxx: Handle aborts correctly for port undergoing deletion.

  - ERXXXXXX: qla2xxx: Fix race between fw dump reset and isolate port.
  - ERXXXXXX: qla2xxx: Add scsi_change_queue_depth to slave configure.

  - 10.02.02.00.a13-k BH 10/28/2020

  - ER147600: Cisco: rpd ELS cmd fail to fetch the speed capabilities
  Change: qla2xxx: Used correct rdp spec, which was broken during code clean-up.

  - ER147695: FC-NVMe target discovery fails when initator wwpn < target wwpn in an N2N (Direct Attach) config
  Change: qla2xxx: fix N2N + NVME connect retry fail

  - ER147832: Issue with uSCM Linux with QCC CLI for some configuration
  Change: qla2xxx: Show event severity only when device state is congested.

  - ER147824 : scmr_stat sysfs node runs out of memory
  Change: qla2xxx: Come up with a compact version of scmr_stat

  - ER147823: NVMe IO is not getting throttled up or down.
  Change: qla2xxx: Enable throttle control for NVMe targets for Peer Congestion.

  - ERXXXXXX: qla2xxx: Count tgt short term link if link comes back before dev_loss_tmo.
  - ERXXXXXX: qla2xxx: Correct the check for fcport while displaying target counters.
  - ERXXXXXX: qla2xxx: Change trigger for host short term link down to dev loss tmo.
  - ERXXXXXX: qla2xxx: Move an SCM log under a debug level.
  - ERXXXXXX: qla2xxx: Set vendor_rsp[0] value.
  - ERXXXXXX: qla2xxx: Make throttling messages more informative.

  - 10.02.02.00.a12-k SK 10/15/2020
  - ER147625: NVMe IO's are failing with Read/Write after LIP reset.
  Change: qla2xxx:Return EBUSY until the remote port delete finishes.

  - ER147653: Target side strongswan start/stop, make initiator crashed.
  Change: qla2xxx: edif: v2 fix double bsg done.

  - ER147791: USCM: clear option is not clearing hba alarm/warning, or clear cong or nvme target stats.
  Change: qla2xxx: Clear Sev and NVMe Target Stats.

  - ER147793: USCM: Throttling has wrong throttling up info and event period is not honored.
  Change: qla2xxx: Fix Throttling algorithm regression.

  - ER147759: NVMe Admin commands are getting throttled and causing admin queue failures.
  Change: qla2xxx: Throttle NVMe I/O commands only.

  - ERXXXXXX: qla2xxx: edif: fix aes_gmac mode.
  - ERXXXXXX: qla2xxx: edif: v2: standardize on port_id_t for bsg api.
  - ERXXXXXX: qla2xxx: edif: fix 4byte align.
  - ERXXXXXX: qla2xxx: edif: fix ELS meta data.
  - ERXXXXXX: qla2xxx: Clear Congestion State/Throttling during chip Reset.
  - ERXXXXXX: qla2xxx: Clear SCM Severity as part of SCM Stats Clear.

  - 10.02.00.02.a11-k1 BH 10/09/2020
  - ER147734 : Lip reset on the isolated port causes server crash
  Change: qla2xxx: Don't allow FW, MPI and lip reset on isolated port.

  - ER147479 - PPC BE RH7.6 - qla2xxx driver loading - machine crashed.
  Change: qla2xxx: Fixes for big endian machines

  - ER147646: Call Trace observed while validating a MPI Pause test scenario. 
  Change: qla2xxx: Correct the WARN_ON check in qla_nvme_abort_set_option.

  - ER147615: Throttling does not work with low I/Os.
  Change: qla2xxx: Check and round off fractional I/Os to 1 on ISP 27xx/28xx Series Adapters

  - ERXXXXXX: qla2xxx: List NVMe targets under scmr_stats on ISP 27xx/28xx Series Adapters
  - ERXXXXXX: qla2xxx: Don't check for port isolation during abort isp.
  - ERXXXXXX: qla2xxx: SCM: Turn off SCM port parameter update mailbox command.
  - ERXXXXXX: qla2xxx: Fix I/O failures during remote port toggle testing

  - 10.02.00.02.a10-k BH 09/25/2020
  SCM Changes:
  - ERXXXXXX:
  Changes - qla2xxx: Clear Congestion state when an RSCN is received/target is torn down.
  qla2xxx: throttling algorithm improvement.
  qla2xxx: Add throttling support for NVMe targets.

  EDIF Changes: 
  - ERXXXXX: LUN loss on ipsec stop/start on target side.
  Change: save Nport on receive of PLOGI
  - ERXXXXX: fix ELS receive collision between physical and NPIV hosts.
  Change: remove erroneous source Nport ID search.

  - ER147570: FCP Performance Drop in latest driver for smaller IOs size.
  Change: qla2xxx: Change WQ_UNBOUND to WQ_MEM_RECLAIM. WQ_MEM_RECLAIM : wq is guaranteed to have at least one execution context regardless of memory pressure.

  - ER147632: QLE2774: RHEL 8.2 System crashes while upgrading he FW from 9.6.0 to 9.6.1 with QCC CLI build 12
  Change: qla2xxx: Fix system crash on nvme abort path by checking sp of aborting command before accessing it.

  - ER147418: server crash seen when trying to capture the debugfs stat on isolated port.
  - ER147645: System panic while trying to capture debugfs stats for EED.
  Change: qla2xxx: Check rport before accessing target number.

  - ER147632: Fix potential stale mem access
  Change: remove stale sp pointer reference

  - CQXXXXXX: FPIN events are not readily decodable.
  Change: qla2xxx: Make FPIN events prints human readable.

  - ER146879: Add support to clear SCM Stats
  Change: qla2xxx: Added support to clear SCM/SCMR Stats on ISP 27xx/28xx Series Adapters

  - ERXXXXXX: qla2xxx: Allow get host stat during reset and sync reset.
  - ERXXXXXX: qla2xxx: Set reset_cmd_err_cnt on reset failure only.
  - ERXXXXXX: qla2xxx: Add isolated flag and return EPERM on isolation.
  - ERXXXXXX: qla2xxx: Count short term link if link comes back in 10 sec.
  - ERXXXXXX: qla2xxx: Don't check for fw_started while posting nvme command.
  - ERXXXXXX: qla2xxx: Pass irq_offset to blk_mq_pci_map_queues API.
  - ERXXXXXX: qla2xxx: lockdown: fix stale sp access.
  - BZ1868688: qla2xxx: tear down session if FW say its down.

  - 10.02.00.02.a9-k BH 09/03/2020
  - ER147554 - sg_reset appears hung iterating over too many Qpairs.
  Change - qla2xxx: limit interrupt vectors to number of cpu.

  - ERXXXXX - qla2xxx: klocwork: Fix Bit field 'mpi_-' has one bit and is signed.

  - ERXXXXX - qla2xxx: Change post del message from debug level to log level.

  - ERXXXXX - qla2xxx: lockdown: fixup - Change error response as per API test.

  - ERXXXXX - qla2xxx: Fix map_queue interface to use the correct blk-mq call.

  - ERXXXXX - Added Structural changes for SCM Phase 2 support.
  Change : qla2xxx: Update structure definitions for SCM to support backward compatibility.

  - 10.02.00.02.a8-k BH 08/30/2020
  - ERXXXXXX - Fix point-to-point (N2N) device discovery issue.
  Change - qla2xxx: Fix point-to-point (N2N) device discovery issue.

  - ERXXXXXX - To wait for ABTS response on I/O timeouts for NVMe.
  Change - qla2xxx: To wait for ABTS response on I/O timeouts for NVMe.

  - ER147523 - BSG stack trace and SCM display issues.
  Change - SCM: Functional regression with a6 release.

  - ER147413 - edif: Fix issue with DIF enable target discovery.
  Change - qla2xxx: edif: Fix issue with DIF enable target discovery.

  - ER147480 clear ASYNC_ACTIVE flag to allow relogin.
  Change - qla2xxx: fix stuck session.

  - ERXXXXXX - lockdown: add mpi flash lock down support
  Change - qla2xxx: lockdown: add mpi flash lock down support

  - 10.02.00.02.a7-k BH 08/22/2020
  - ER147495 - edif changes 
  Change - qla2xxx: edif: fix nvme discovery failure
  qla2xxx: edif: fix els corruption.

  - ERXXXXXX - add mpi flash lock down support
  Change - qla2xxx: lockdown: add mpi flash lock down support

  - ERXXXXXX: SCMR changes
  Change - qla2xxx: SCMR: Correct scmr_outstanding_reqs accounting.
  qla2xxx: SCM: Changes to segregate current_events and current_state.
  qla2xxx: SCMR: Increase local array size.

  - ER147298 : USCM "Congestion Warning" counter regression
  Change - qla2xxx: Correct FPIN Structure Definition (Severity).

  - 10.02.00.02.a6-k BH 08/13/2020
  - ERXXXXXX - fix crash on session cleanup + unload.
  Change - qla2xxx: fix crash on session cleanup + unload.

  - ER147329 - edif changes 
  Change - qla2xxx: edif: fix compile error. do not submit
  qla2xxx: edif: fix double free on ELS send failure.
  qla2xxx: edif: reject els if non secure device.
  qla2xxx: edif: reject ELS on session down.
  qla2xxx: edif: redefine purex dest addr to be more consistent.
  qla2xxx: edif: tweak debug messages.
  qla2xxx: edif: fix nvme+edif target connect problem.

  - ER147460 - issue with Diag test on QCC CLI 2.4.0 build 10 with 10.2.00.2-a5 driver
  Change - qla2xxx: edif: move bsg auth els into separate routine.
  qla2xxx: edif: Fix error in BSG ELS path that has valid response data.

  - ER147312 - Add support to report MPI FW state.
  Change - qla2xxx: Add support to report MPI FW state.
  qla2xxx: Fix reset of MPI firmware.
  qla2xxx: Fix MPI reset needed message.

  - 10.02.00.02.a5-k BH 07/31/2020
  - ER147418: server crash seen when trying to capture the debugfs stat on isolated port.
  Change - qla2xxx: Don't process target debugfs stats if port is isolated.

  - ERXXXXXX : Add SCM stats to scmr_stats node.
  Change - qla2xxx: Add SCM stats to scmr_stats node.

  - ER147419 : Fix crash due to request q pointer extraction failure.
  Change - qla2xxx: Latency measurement patch.

  - ERXXXXXX : edif: remove redundant field in port_id_t
  Change -qla2xxx: edif: remove redundant field in port_id_t

  - ER147331 : extract bbc from PLOGI template payload.
  Change -qla2xxx: Fix buffer-buffer credit extraction error

  - ERXXXXXX : Split qla2x00_configure_local_loop()
  Change scsi: qla2xxx: Split qla2x00_configure_local_loop()

  - ERXXXXXX : SCMR - Add I/O flow control.
  Change - qla2xxx: SCMR - Add I/O flow control.

  - 10.02.00.02.a4-k BH 07/23/2020
  - ER147402 - Do not install nvme auto connect script if OS is installing it.
  Change - qla2xxx: auto-connect scripts are install based on nvme-cli package.

  - ERXXXXXX - Fixed return status of nvme fcp request.
  Change - qla2xxx: Set NVME status code for failed NVME FCP request.

  - ERXXXXXX - Multi-que support for TMF.
  Change - qla2xxx: Multi-que support for TMF.

  - ERXXXXXX – edif changes
  Change - qla2xxx: edif: simplify reserve/release of sa_index.
  qla2xxx: edif: tweak debug log.
  qla2xxx: edif: adjust ELS resp length.
  qla2xxx: edif: send logo on app stop.
  qla2xxx: edif: remove prlo in session deletion.
  qla2xxx: edif: Fix app stop stall.

  - ER147298 - USCM "Congestion Warning" counter regression w/.65 driver.
  Change - qla2xxx: Correct fpin_descriptor definition.
  qla2xxx: Consolidate EDIF & SCM Purex Calls.

  - ERXXXXXX - Calculate avg. time taken by different components for IO completion.
  Change - qla2xxx: Latency measurement patch.

  - 10.02.00.02.a3-k BH 07/16/2020
  - ER147348 - Observing firmware dump while running qaucli -g post port isolation.
  Change - qla2xxx: Don't check firmware state in case of chip is down.

  - ER147338 - SLES: Driver load failed - modprobe: ERROR: module 'qla2xxx' is unsupported
  Change - qla2xxx: Add support for loading external modules on SuSE.

  - ER147361 - System panic after enabling port isolated during TimeOutReset.
  Change - qla2xxx: Synchronize the update the host counters using lock.

  - ER147370 - Hardware Error counter not incrementing for MBX command timeout 
  Change - qla2xxx: Update hardware error count for various error conditions.

  - ERXXXXXX - The change is to help in debuggging.
  Change - qla2xxx: Move some messages from debug to normal log level.

  - ER147346 - Observed a call trace after port isolation. 
  Change - qla2xxx: Fix the call trace for flush workqueue.

  - ERXXXXXX - For debug purpose
  Change - qla2xxx: Add error counters to debugfs node

  - 10.02.00.02.a2-k AE 07/10/2020
  - ERXXXXXX - qla2xxx: Fix TCM compilation issues.
  Change - Enabled build of tcm_qla2xxx module and fixed compile issues.

  - ERXXXXXX - qla2xxx: edif : Added back the app_stop wait and avoid if link is down.
  Change - Added wait during app stop.

  - ERXXXXXX - qla2xxx: Set BIT_13 for NVMe Async events.
  Change - Driver changes to skip SLER for Async event command.

  - ER147323 - qla2xxx: Correct the check for sscanf return value.
  Change - Driver updated to check version correctly.

  - ERXXXXXX - qla2xxx: v2: Add EDIF support.
  Change - Refactoring EDIF code for modularity.

  - ER147298 - Congestion Warning/Alarm counters fail to increment
  Change - Update driver to increment the counters for congestion signals.

  - 10.02.00.02.a1-k AE 06/29/2020
  - qla2xxx: Enable IOCB throttling by default.
  - qla2xxx: Implementation to get and manage host, target stats and initiator port.
  - qla2xxx: Add SLER and PI control support.
  - qla2xxx: Do not log message when reading port speed via sysfs
  - qla2xxx: fix null pointer access.
  - qla2xxx: Use MPI hang trigger to do PEGTUNE halt.
  - qla2xxx: Reduce erroneous error in link reset path
  - qla2xxx: v2: fix stalled N2N reconnect.
  - qla2xxx: Fix warnings on SLES12SP5.
  - qla2xxx: Fix compilation issues on SLES15
  - qla2xxx: Compilation Fixes for SLES15SP1.
  - qla2xxx: Debugfs compilation issue fix for RH7.6.
  - qla2xxx: Fix gcc test compile error output being printed.
  - qla2xxx: Timestamp device online and offline transitions.
  - qla2xxx: Add rport fields in debugfs.
  - qla2xxx: Allow dev_loss_tmo setting for FC-NVMe devices.
  - qla2xxx: Setup debugfs entries for remote ports.
  - qla2xxx: Compilation fixes for RH8.2
  - qla2xxx: Compilation changes for RH7.6
  - qla2xxx: Fixes for compilation on RH7.x I
  - qla2xxx: bsg_job to bsg_job_t
  - qla2xxx: I Unify source code to work with newer kernels.
  - qla2xxx: Makefile changes from code-uni-devel-10x.
  - qla2xxx: qla_edif file changes to compile the driver.
  - qla2xxx: Fix compilation issues.
  - qla2xxx: Fix Makefile issue.
  - qla2xxx: fix compile error
  - qla2xxx: Use explicit LOGO in target mode
  - qla2xxx: Add EDIF support.
  - qla2xxx: Addd edif related files.
  - qla2xxx: Fix MPI failure AEN (8200) handling.
  - qla2xxx: SCM - Backport optimizations and style changes from upstream work.
  - qla2xxx: Fix warning in qla_attr.c file.
  - qla2xxx: Fix nvme compilation error.
  - qla2xxx: Fix crash in alloc w/GFP_KERNEL + interrupt
  - qla2xxx: v2: add iocb resource tracking.
  - qla2xxx: Fix WARN_ON in qla_nvme_register_hba.
  - qla2xxx: Allow ql2xextended_error_logging special value 1 to be set anytime.
  - qla2xxx: Make tgt_port_database available in initiator mode.
  - qla2xxx: reduce noisy debug message.
  - qla2xxx: Fix mailbox Ch erroneous error
  - qla2xxx: fix login timeout.
  - qla2xxx: Accomodate for SCM FW attribute bit change.
  - qla2xxx: post FC event (FPIN) to transport FPIN handler.
  - qla2xxx: Hide fc_host_fpin_rcv kernel dependency.
  - qla2xxx: Add changes to compile across various kernels.
  - qla2xxx: Use active targets to update SCM stats.
  - qla2xxx: Move SCM functions to qla_isr to keep changes local.
  - qla2xxx: Code to process FLOGI ACC extended payload.
  - qedf: Fix compilation issue - revisit.
  - qla2xxx: SCM Phase 1 Implementation + 2 other patches.
  - qla2xxx: Enable PUREX passthru post ISP reset.
  - qla2xxx: Fix hang when issuing nvme disconnect-all in NPIV.
  - qla2xxx: performance tweak
  - scsi: qla2xxx: fix fcport null pointer access.
  - fixup! qla2xxx: Fix unbound NVME response length.
  - scsi: qla2xxx: Fix unbound NVME response length
  - qla2xxx: Add host attribute to trigger MPI hang.
  - qla2xxx: fix mtcp dump collection failure.
  - qla2xxx: Set Nport ID for N2N
  - qla2xxx: Fix crash during device discovery.
  - qla2xxx: Handle NVME status iocb correctly.
  - qla2xxx: Remove restriction of FC T10-PI and NVME
  - qla2xxx: serialize fc_port alloc in N2N
  - qla2xxx: NPIV does not come up after FW dump.
  - qla2xxx: fix RDP respond data format bug.
  - qla2xxx: force semaphore on flash validation failure.
  - qla2xxx: add more FW debug information
  - qla2xxx: Revert: Disable T10-DIF feature with FC-NVMe during probe
  - qla2xxx: Update BPM enablement semantics.
  - qla2xxx: fix FW resource print error.
  - 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: 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: Add 16.0GT for PCI String
  - qla2xxx: Use FW_STARTED macro
  - qla2xxx: Add fixes for mailbox command
  - qla2xxx: Fix login IOCB flag
  - qla2xxx: Save rscn_gen for new fcport
  - qla2xxx: firmware option 3 is clobbered by speed set
  - qla2xxx: ISP28xx active FW region
  - qla2xxx: Add portname to print logs in qla24xx_logio_entry().
  - qla2xxx: Correction to MB in-direction selection in qla2x00_echo_test().
  - qla2xxx: Correction to selection of loopback/echo test.
  - qla2xxx: Use endian macros to assign static fields in fwdump header.
  - qla2xxx: Add Speed in SFP print information
  - qla2xxx: Fix RDP response size
  - qla2xxx: Handle cases for limiting RDP response payload length.
  - qla2xxx: Add deferred queue for processing ABTS and RDP.
  - qla2xxx: Cleanup ELS/PUREX iocb fields.
  - qla2xxx: Add devid's and conditionals for 28xx.
  - qla2xxx: Add vendor extended FDMI additions and amendments.
  - qla2xxx: Provide separate RDP enable.
  - qla2xxx: Add vendor extended RDP additions and amendments.
  - qla2xxx: Add changes in preparation for vendor extended FDMI/RDP.
  - qla2xxx: Add 2061 PCI ID
  - qla2xxx: Remove all DIX-0 references
  - qla2xxx: Add endianizer macro calls to fc host stats.
  - qla2xxx: Add sysfs node for D-Port Diagnostics AEN data.
  - qla2xxx: Move free of fcport out of interrupt context.
  - qla2xxx: Add beacon LED config sysfs interface.
  - qla2xxx: Add sysfs hooks for FC-NVMe autoconnect

  - 10.01.00.22-k AE 06/29/2020
  - Upstream driver as part of Linux 5.6


