                          ============================
                           R E L E A S E    N O T E S
                          ============================
                                     QEDI

Version 8.55.15.0 (Jul 29, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.14.0 (Jun 25, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.13.0 (Jun 04, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.12.0 (May 26, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.11.0 (Apr 14, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.10.0 (Mar 26, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.9.0 (Mar 24, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.8.0 (Mar 18, 2021)
===============================
Internal FW 8.50.18.0

Version 8.55.7.0 (Mar 16, 2021)
===============================
Internal FW 8.50.18.0

Fixes
-----
1. Problem: FJT-5570 - Compilation error on upstream kernel
   Change: Fix compilation error on upstream kernel
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Enhancement
-----------
1. Change: Add SLES 15 SP3 support
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: SLES 15 SP3
           Protocol: iSCSI

Version 8.55.6.0 (Oct 29, 2020)
===============================
Internal FW 8.50.18.0

Version 8.55.5.0 (Oct 12, 2020)
===============================
Internal FW 8.50.17.0

Version 8.55.4.0 (Sep 30, 2020)
===============================
Internal FW 8.50.16.0

Enhancement
-----------
1. Change: Rework fan failure function to use shutdown routine
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.55.3.0 (Sep 04, 2020)
===============================
Internal FW 8.50.16.0

Version 8.55.2.0 (Aug 27, 2020)
===============================
Internal FW 8.50.16.0

Fixes
-----
1. Problem: CQ108828 - list_del corruption on short cable pulls
   Change: Allow IO drain on FW cleanup timeout,
           Mark all connections for recovery on link down event.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

2. Problem: FJT-2314: After injecting fw_assert on nic pf system crashed
   Change: During FW_ASSERT initiate from qede driver, sometimes
	   iscsi connection doesn’t removed while qedi unload path
	   is in progress. Fix crash during firmware assert reset recovery.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Enhancement
-----------
1. Change: Correct unnecessary usage of signed data type
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.55.1.0 (Jul 28, 2020)
===============================
Internal FW 8.50.16.0

Version 8.55.0.0 (Jul 15, 2020)
===============================
Internal FW 8.50.16.0

Fixes
-----
1. Problem: CQXXXX - Warning reported by klockwork static ananlysis tool
   Change: Use snprintf to limit max number of bytes to the buffer
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Enhancement
-----------
1. Change: Retry qed->probe during recovery.
	   During recovery due to iscsi fn ramrod failure, we
	   wait for 2 sec and then call qed->probe, if probe
	   fails then re-try max 10 times.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.53.51.0 (Jun 19, 2020)
===============================
Internal FW 8.50.16.0

Fixes
-----
1. Problem: CQ109022 - System crash during failover stress test
   Change: Check if IO is present before deleting the IO from
	   active command list ensuring FW sends valid IO
	   completion and protect the list_del corruption.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

2. Problem: CQXXXX - IO active command list not protected risking
	    list_del corruption.
   Change: Add protection for IO command list at multiple instances.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.53.50.1 (Jun 10, 2020)
===============================
Internal FW 8.50.16.0

Enhancements
------------
1. Change: Add firmware error recovery invocation support
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
           Protocol: iSCSI

Fixes
-----
1. Problem: CQ108960 - Long OS boot time on iSCSI boot LUN
   Change: Use msix count from set_fp_int in irq allocation
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
           Protocol: iSCSI

2. Problem: CQ108975: System unable to shutdown upon reboot in iSCSI BFS
   Change: Skip fw connection termination in case of pci shutdown.
   Introduced: 8.50.19.0
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
           Protocol: iSCSI

3. Problem: CQXXXX - Compilation error on SLES15 SP2
   Change: Fix compile time error by defining pci_aer_clear_nonfatal_status
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: SLES15 SP2
           Protocol: iSCSI

Version 8.53.50.0 (May 15, 2020)
===============================
Internal FW 8.50.16.0

Version 8.50.25.0 (Apr 27, 2020)
===============================
Internal FW 8.50.15.0

Fixes
-----
1. Problem: CQXXXX - Debug print functions exited abruptly
   Change: Correctly match va_start with va_end
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.50.24.0 (Mar 19, 2020)
===============================
Internal FW 8.50.14.0

Fixes
-----
1. Problem: CQ108600 - After successful iSCSI BFS, error message
	    "Boot target not set" seen continuously.
   Change: Remove additional char from boot target iqn name.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

2. Problem: CQ108329 - call trace observed during reboot of the server.
   Change: Remove nfunc from driver debug print levels.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Version 8.50.23.0 (Mar 6, 2020)
===============================
Internal FW 8.50.14.0

Fixes
-----
1. Problem: CQ107948 - Call trace when discovery made to non-reachable target
   Change: Validate function associated with work to be flushed
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Version 8.50.22.0 (Feb 27, 2020)
===============================
Internal FW 8.50.14.0

Fixes
-----
1. Problem: CQ108318 - iSCSI BFS system fails to reboot if one port is down
	    and reboot is attempted
   Change: Use mid-layer API to clear iscsi context during shutdown handler
   Introduced: 8.50.19.0
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Version 8.50.21.0 (Feb 21, 2020)
===============================
Internal FW 8.50.14.0

Version 8.50.20.0 (Feb 14, 2020)
===============================
Internal FW 8.50.14.0

Version 8.50.19.0 (Feb 10, 2020)
===============================
Internal FW 8.50.13.0

Enhancement
-----------
1. Problem: CQ106213 - Add shutdown handler support.
   Change: During shutdown test of the qedi driver observed machine error
           on standalone system. Add shutdown handler support.
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Fixes
-----
1. Problem: CQ108032 - iSCSI BFS system has trouble shutting down with qedi call trace.
            CQ108061 - WOL doesn't work if OS is shutdown from iSCSI BFS.
   Change: Teardown the iSCSI sessions cleanly while handling the shutdown mode of
           the driver, enabling clean reboot of the OS.
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Version 8.50.18.0 (Feb 04, 2020)
===============================
Internal FW 8.50.12.0

Version 8.50.17.0 (Jan 30, 2020)
===============================
Internal FW 8.50.12.0

Enhancement
-----------
1. Change: CQ108127 - Add support for RHEL 8.2 and SLES 15.2
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: RHEL 8.2, SLES 15.2
	   Protocol: iSCSI

Version 8.50.16.0 (Jan 20, 2020)
===============================
Internal FW 8.50.12.0

Fixes
-------
1. Change: Revert "CQ106213: Add shutdown handler support"
   Introduced: 8.50.13.0
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Version 8.50.15.0 (Jan 03, 2020)
===============================
Internal FW 8.50.12.0

Enhancement
-----------
1. Change: Add support for PCIe AER handling
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Version 8.50.14.0 (Dec 18, 2019)
===============================
Internal FW 8.50.11.0

Version 8.50.13.0 (Dec 11, 2019)
===============================
Internal FW 8.50.10.0

Enhancement
-----------
1. Problem: CQ106213: Add shutdown handler support.
   Change: During shutdown test of the qedi driver observed machine error
           on standalone system. Add shutdown handler support.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI

Version 8.42.9.0 (Oct 04, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.8.2 (Oct 03, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.8.1 (Oct 01, 2019)
===============================
Internal FW 8.42.1.0

Fixes
-----
1. Problem: CQ107304: Source file compilation failed.
   Change: ".use_clustering" is removed from Ubuntu, so added a macro to
		 avoid compilation issue and maintain the backward compatibility as well.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
	   OS: All supported Linux flavors
	   Protocol: iSCSI


Version 8.42.8.0 (Sept 20, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.7.0 (Sept 11, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.6.0 (Sept 03, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.5.0 (Aug 30, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.4.0 (Aug 22, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.3.0 (Aug 13, 2019)
===============================
Internal FW 8.42.1.0

Version 8.42.2.0 (Jul 29, 2019)
===============================
Internal FW 8.42.0.0

Version 8.42.1.0 (Jul 01, 2019)
===============================
Internal FW 8.40.32.0

Version 8.42.0.0 (Jun 07, 2019)
===============================
Internal FW 8.40.32.0

Version 8.40.26.0 (Jun 04, 2019)
================================
Internal FW 8.40.32.0

Version 8.40.25.0 (May 30, 2019)
================================
Internal FW 8.40.31.0

Version 8.40.24.0 (May 06, 2019)
================================
Internal FW 8.40.30.0

Version 8.40.23.0 (Apr 26, 2019)
================================
Internal FW 8.40.28.0

Enhancement
-----------
1. Compilation fixes for first 8.40.23.0 release.

Version 8.38.4.1 (Apr 22, 2019)
================================
Internal FW 8.38.0.0

1. Problem: CQ105694 - iSCSI server with CN1300r crashes during iSCSI
	    discovery via offload
   Change: Validate the session targetname before providing the TLV data
	   and confirming the presence of boot targets.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.38.4.0 (Apr 16, 2019)
================================
Internal FW 8.38.0.0

1. Change: CQ105891 - Revert-"Add shutdown callback handler in unload path
	   to comply with pci shutdown routine."
   Introduced: Regression CQ103567
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.38.3.1 (Apr 05, 2019)
================================
Internal FW 8.38.0.0

Enhancement
-----------
1. Change: CQ103567 - Add shutdown callback handler in unload path
	   to comply with pci shutdown routine.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.38.3.0 (Mar 04, 2019)
================================
Internal FW 8.38.0.0

Version 8.38.2.0 (Feb 19, 2019)
================================
Internal FW 8.38.2.0

Fixes
-----
1. Problem: CQ104679, CQ104680 - Failures observed upon triggering reset recovery
   Change: Multiple changes to handle reset recovery correctly.
	1. Add irq_set_affinity_notifier — control notification of
	   IRQ affinity changes, and pass NULL to disable notification.
	2. Re-initialize iscsi pf params.
	3. Do not progress ep_connect if Link is down.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.38.1.0 (Jan 31, 2019)
================================
Internal FW 8.37.10.0

Version 8.38.0.0 (Jan 22, 2019)
================================
Internal FW 8.37.10.0

Enhancement
-----------
1. Change: shost_use_blk_mq is removed from upstream.
	   Hence correctly set number for hardware queues for RHEL 8.0
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx
           OS: RHEL 8.0
           Protocol: iSCSI

Version 8.37.32.0 (Jan 04, 2019)
================================
Internal FW 8.37.10.0

Version 8.37.31.0 (Dec 31, 2018)
================================
Internal FW 8.37.10.0

Version 8.37.30.1 (Dec 26, 2018)
================================
Internal FW 8.37.10.0

Fixes
-----
1. Problem: CQ104532 - Qlogic 1300r CNA is unable to discover MSA arrays when using
	    adapter offload.
   Change: Define new ep_state OFFLDCONN_NONE so that ep_poll mechanism notifies
	   the upper open-iscsi layer to complete the login process on the first
	   un-reachable target and thus proceed login to other reachable targets.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.30.0 (Nov 26, 2018)
================================
Internal FW 8.37.10.0

Enhancement
-----------
1. Add debug extra cflag -g within the Makefile

Version 8.37.29.0 (Nov 20, 2018)
================================
Internal FW 8.37.10.0

Fixes
-----
1. Update compatibility for qed version 8.37.29.0.

Version 8.37.28.1 (Nov 08, 2018)
================================
Internal FW 8.37.9.0

Fixes
-----
1. Problem: CQ102578 - ISCSI initiator IP ping Drop with SLES12-SP3 installed
   Change: Removed logic to update hw producer index in interrupt context.
           Update hw producer index after uio ring and buffer get initialized.
           And also add packet filter in light L2 rx.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.28.0 (Nov 05, 2018)
================================
Internal FW 8.37.9.0

Fixes
-----
1. Update compatibility for qed version 8.37.28.0.

Version 8.37.27.0 (Oct 26, 2018)
================================
Internal FW 8.37.9.0

Enhancement
-----------
1. Change: Add RHEL 8 support
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: RHEL 8
           Protocol: iSCSI

Version 8.37.26.0 (Oct 19, 2018)
================================
Internal FW 8.37.8.0

Enhancement
-----------
1. Change: Use qed recovery_prolog callback before executing ULP recovery
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Fixes
-----
1. Problem: CQ103775 - Kernel panic after switch perturbation
   Change: Fix kernel NULL pointer deref by checking for session online
	   before querying OCBB iSCSI data.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.25.1 (Oct 11, 2018)
================================
Internal FW 8.37.8.0

Enhancement
-----------
1. Add PowerPC little endian compatibility support.

Version 8.37.25.0 (Oct 09, 2018)
================================
Internal FW 8.37.8.0

Fixes
-----
1. Update compatibility for qed version 8.37.25.0.

Version 8.37.24.0 (Sep 28, 2018)
================================
Internal FW 8.37.8.0

Enhancement
-----------
1. CQ103152 - Update Module Description string.

Version 8.37.23.0 (Sep 23, 2018)
================================
Internal FW 8.37.8.0

Fixes
-----
1. Update compatibility for qed version 8.37.23.0.

Version 8.37.22.0 (Sep 11, 2018)
================================
Internal FW 8.37.7.0

Fixes
-----
1. Update compatibility for qed version 8.37.22.0.

Version 8.37.21.0 (Sep 03, 2018)
================================
Internal FW 8.37.7.0

Enhancements
------------
1. Change: Remove "num_r2tq_pages_in_ring" from "qed_iscsi_pf_params".
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.20.0 (Aug 17, 2018)
================================
Internal FW 8.37.7.0

Enhancements
------------
1. Change: Extend the usage of "-mindirect-branch=thunk-extern" in Makefile
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: RHEL 7.6 and SLES 12 SP4
           Protocol: iSCSI

Version 8.37.19.0 (Aug 06, 2018)
================================
Internal FW 8.37.7.0

Fixes
-----
1. Update compatibility for qed version 8.37.19.0.

Version 8.37.18.0 (Jul 30, 2018)
================================
Internal FW 8.37.6.0

Enhancements
------------
1. Change: Fix a potential buffer overflow
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.16.0 (Jul 9, 2018)
================================
Internal FW 8.37.5.0

Enhancements
------------
1. Change: Correctly set the memory barriers.
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.15.0 (Jul 2, 2018)
================================
Internal FW 8.37.5.0

Enhancements
-----------
1. Problem: CQ102409 - L4 iSCSI BFS LUN detection failure
   Change: Send the driver state to MFW
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.14.0 (Jun 25, 2018)
================================
Internal FW 8.37.5.0

Fixes
-----
1. Update compatibility for qed version 8.37.14.0.

Version 8.37.13.0 (Jun 11, 2018)
================================
Internal FW 8.37.4.0

Fixes
-----
1. Update compatibility for qed version 8.37.13.0.

Version 8.37.12.0 (May 30, 2018)
================================
Internal FW 8.37.3.0

Enhancements
------------
1. Change: Add retpoline spectre meltdown support.
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors

Version 8.37.11.0 (May 28, 2018)
================================
Internal FW 8.37.3.0

Fixes
-----
1. Problem: CQ100612 -  System Crash with reason list_del corruption while doing
            multiple iteration of session load unload.
   Change: For L2 reply, remove validation and light L2 MTU change.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Enhancements
------------
1. Change: Change MSI-X load error message.
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors

Version 8.37.10.0 (May 14, 2018)
================================
Internal FW 8.37.2.0

Fixes
-----
1. Problem: CQ101611 - faslinq major Compilation in Sles15 gives dracut
            message prints
   Change: Makefile changes to build initrd for SLES15
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: SLES15
           Protocol: iSCSI

Enhancements
------------
1. Change: Remove BD split logic.
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors

2. Change: Drop vlan and tcp time stamp from mss calc for fw 8.37.2.0.
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors

Version 8.37.9.0 (May 7, 2018)
================================
Internal FW 8.37.1.0

Fixes
-----
1. Problem: CQ101392 - Compilation errors on Debian
   Change: Fix compilation errors on Debian
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
   OS: All supported Linux flavors
   Protocol: iSCSI

Version 8.37.8.0 (Apr 30, 2018)
================================
Internal FW 8.33.14.0

Fixes
-----
1. Update compatibility for qed version 8.37.8.0.

Version 8.37.7.0 (Apr 20, 2018)
================================
Internal FW 8.37.0.0

Fixes
-----
1. Update compatibility for qed version 8.37.7.0.

Version 8.37.6.0 (Apr 12, 2018)
================================
Internal FW 8.33.14.0

Fixes
-----
1. Update compatibility for qed version 8.37.6.0.

Version 8.37.5.0 (Apr 09, 2018)
================================
Internal FW 8.33.14.0

Fixes
-----
1. Problem: CQ96849 - NULL pointer dereference in the event of
            iscsi_offload_mesg failure
   Change: The return status for iscsi_offload_mesg and
           release_conn were shared resulting in NULL pointer dereference.
           Use different return status for release_conn.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
   OS: All supported Linux flavors
   Protocol: iSCSI

Version 8.37.4.0 (Mar 30, 2018)
================================
Internal FW 8.33.13.0

Fixes
-----
1. Update compatibility for qed version 8.37.4.0.

Version 8.37.3.0 (Mar 26, 2018)
================================
Internal FW 8.33.13.0

Fixes
-----
1. Update compatibility for qed version 8.37.3.0.

Version 8.37.2.0 (Mar 14, 2018)
================================
Internal FW 8.33.13.0

Fixes
-----
1. Update compatibility for qed version 8.37.2.0.

Enhancements
------------
1. Problem: CQXXXXX - In cases of hardware errors, the driver triggered
            the adapter recovery
   Change: Remove trigger adapter recovery process for hardware errors.
   Introduced: Day 1
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.1.0 (Mar 6, 2018)
==============================
Internal FW 8.33.12.0

Fixes
-----
1. Problem: CQ98969: CHAP secret shows additional character
   Change: Use sprintf instead of snprintf to fix the truncation of
           CHAP name and secret. The data in NVRAM is not guaranteed to be
           NUL terminated. Since snprintf expects byte-stream to accommodate
           null byte, the CHAP secret is truncated.
   Introduced: Day 1.
   Impact: HW: QL41xxx, QL45xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Enhancements
-----------
1. Change: Update copyright in source files for 2018.
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

2. Change: Suppress MTU validation debug log
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

3. Change: Fail PCI probe when qed fails to enable MSI-X.
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

4. Change: Adjust the CRC size within iSCSI NVM image
   Impact: HW: QL41xxx, QL45xxx
           OS: All supported Linux flavors
           Protocol: iSCSI

Version 8.37.0.0 (Feb 13, 2018)
===============================
Internal FW 8.33.10.0

Fixes
-----
1. Update compatibility for qed version 8.37.0.0.

Version 8.33.10.0 (Jan 30, 2018)
===============================
Internal FW 8.33.10.0

Fixes
-----
1. Update compatibility for qed version 8.33.10.0.
2. CQ99185 - set limits for ll2 buf size.
3. Add regression test for hardware error handling.
4. Improve firmware debug dump handling.

Version 8.33.9.0 (Jan 16, 2018)
===============================
Internal FW 8.33.8.0

Fixes
-----
1. Update compatibility for qed version 8.33.9.0.

Version 8.33.8.0 (Jan 12, 2018)
===============================
Internal FW 8.33.8.0

Fixes
-----
1. Update compatibility for qed version 8.33.8.0.

Version 8.33.7.0 (Jan 05, 2018)
===============================
Internal FW 8.33.8.0

Fixes
-----
1. Update compatibility for qed version 8.33.7.0.
2. Fix crash when offloading a connection after error recovery.
3. Free IRQs before stopping function in board disable function.

Version 8.33.6.0 (Dec 22, 2017)
===============================
Internal FW 8.33.7.0

Fixes
-----
1. Update compatibility for qed version 8.33.6.0.

Version 8.33.5.0 (Dec 15, 2017)
===============================
Internal FW 8.33.7.0

Fixes
-----
1. Update compatibility for qed version 8.33.5.0.
2. CQ98404 - Add module param to set LL2 buf or ping packet size.

Version 8.33.4.0 (Nov 23, 2017)
===============================
Internal FW 8.33.6.0

Fixes
-----
1. Update compatibility for qed version 8.33.3.0.
2. CQ95687: Enhancement to ping using packet size greater than 1K.
3. Validate and reset MTU in ping path to 9000 to support ping with jumbo frame

Version 8.33.3.0 (Nov 23, 2017)
===============================
Internal FW 8.33.4.0

Fixes
-----
1. Update compatibility for qed version 8.33.3.0.

Version 8.33.2.0 (Nov 17, 2017)
===============================
Internal FW 8.33.4.0

Fixes
-----
1. Update compatibility for qed version 8.33.2.0.
2. Use dev_info.common.hwfns and affin_hwfn_idx to get MSI-X vector index
   to use

Version 8.33.1.0 (Oct 25, 2017)
===============================
Internal FW 8.33.2.0

Fixes
-----
1. Update compatibility for qed version 8.33.1.0.

Version 8.33.0.0 (Oct 9, 2017)
===============================
Internal FW 8.33.1.0

Fixes
-----
1. Update compatibility for qed version 8.33.0.0.

Version 8.30.13.0 (Sep 26, 2017)
===============================
Internal FW 8.30.16.0

Fixes
-----
1. Fix termination timeouts in session logout

Version 8.30.12.0 (Sep 14, 2017)
===============================
Internal FW 8.30.16.0

Fixes
-----
1. Update compatibility for qed version 8.30.12.0.

Version 8.30.11.0 (Sept 01, 2017)
===============================
Internal FW 8.30.15.0

Enhancements
------------
1. Add get_generic_tlv_data handler.

Version 8.30.10.0 (Aug 24, 2017)
===============================
Internal FW 8.30.14.0

Fixes
-----
1. Update compatibility for qed version 8.30.10.0.

Version 8.30.9.0 (Aug 21, 2017)
===============================
Internal FW 8.30.13.0

Fixes
-----
1. Update compatibility for qed version 8.30.9.0.

Version 8.30.8.0 (Aug 11, 2017)
===============================
Internal FW 8.30.12.0

Fixes
-----
1. Update compatibility for qed version 8.30.8.0.

Version 8.30.7.0 (Jul 31, 2017)
===============================
Internal FW 8.30.11.0

Fixes
-----
1. Update compatibility for qed version 8.30.7.0.

Version 8.30.6.0 (Jul 10, 2017)
===============================
Internal FW 8.30.10.0

Fixes
-----
1. Validate initiator VLAN ctrl_flag
2. Set boot target OCBB params
3. Use struct iscsi_eqe_data instead of async_data

Version 8.30.5.0 (Jun 23, 2017)
===============================
Internal FW 8.30.8.0

Fixes
-----
1. Update compatibility for qed version 8.30.5.0.
2. CQ93955 - Validate I/O list node before completion.

Version 8.20.4.0 (Jun 9, 2017)
===============================
Internal FW 8.20.2.0

Fixes
-----
1. Update compatibility for qed version 8.20.4.0.

Version 8.20.3.0 (Jun 8, 2017)
===============================
Internal FW 8.20.2.0

Fixes
-----
1. Update compatibility for qed version 8.20.3.0.

Version 8.20.2.0 (May 25, 2017)
===============================
Internal FW 8.20.1.0

Fixes:
------
1. Correctly update tcp offload congestion window.
2. Fix upstream compilation err for refcount.

Version 8.20.1.0 (May 19, 2017)
===============================
Internal FW 8.20.0.0

Fixes:
------
1. Problem: CQ83818: Bad pte call trace when iscsiuio is stopped.
   Change: Invoke one of the __get_free_pages wrappers to be used
           instead of kzalloc for udev->ctrl.
   Introduced: Day 1.
   Impact: HW: QL41xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Enhancements:
------------
1. Add and convert to CPU hotplug state machine to make
   upstream compatible.
2. Add support for using update-initramfs in Makefile.

Version 8.20.0.0 (Apr 27, 2017)
===============================
Internal FW 8.20.0.0

Fixes
-----
1. Update compatibility for qed version 8.20.0.0.

Version 8.18.22.0 (Apr 20, 2017)
===============================
Internal FW 8.18.22.0

Fixes
-----
1. Update compatibility for qed version 8.18.22.0.

Version 8.18.21.0 (Apr 07, 2017)
===============================
Internal FW 8.18.22.0

Fixes
-----
1. Update compatibility for qed version 8.18.21.0.

Version 8.18.20.0 (Apr 05, 2017)
===============================
Internal FW 8.18.21.0

Fixes
-----
1. Update compatibility for qed version 8.18.20.0.

Version 8.18.19.0 (Mar 30, 2017)
===============================
Internal FW 8.18.20.0

Fixes
-----
1. Update compatibility for qed version 8.18.19.0.

Version 8.18.18.0 (Mar 23, 2017)
===============================
Internal FW 8.18.19.0

Fixes
-----
1. Update compatibility for qed version 8.18.18.0.

Version 8.18.17.0 (Mar 16, 2017)
===============================
Internal FW 8.18.18.0

Fixes
-----
1. Problem: CQ92539 - Data corruption seen while running IOs.
   Change: Fix the data corruption by changing the firmware max BD size.
   Introduced: v8.18.16.0
   Impact: HW: QL41xxx adapters
           OS: All supported Linux flavors
           Protocol: iSCSI

Enhancements
------------
1. Set max_fin_rt default value.

Version 8.18.16.0 (Mar 09, 2017)
===============================
Internal FW 8.18.17.0

Fixes
-----
1. Initialize the max SQEs
2. Set max BDs per cmd to firmware max supported BDs
3. Fix missing return error code check on call to qedi_setup_int
4. Modify different module params

Version 8.18.15.0 (Mar 01, 2017)
===============================
Internal FW 8.18.16.0

Fixes
-----
1. Initialize the stats mutex lock
2. Use arch independent two_msl_timer value.
3. CQ92086 - Update the nvm_iscsi_cfg header file.
4. CQ91437 - Validate chap and mutual chap auth correctly

Version 8.18.14.0 (Feb 23, 2017)
===============================
Internal FW 8.18.15.0

Fixes
-----
1. Fix possible memory leak in qedi_iscsi_update_conn().
2. Fix memory leak in tmf response processing.
3. Implement get_protocol_tlv_data callback.
4. Fix crash while lun reset due to invalid tid.

Version 8.18.13.0 (Feb 16, 2017)
===============================
Internal FW 8.18.14.0

Fixes
-----
1. Update compatibility for qed version 8.18.13.0

Version 8.18.12.0 (Feb 10, 2017)
===============================
Internal FW 8.18.13.0

Fixes
-----
1. Fix NULL panic in qedi_set_path.

Version 8.18.11.0 (Feb 3, 2017)
===============================
Internal FW 8.18.13.0

Fixes
-----
1. Cleanup qedi_show_boot_eth_info() code flows.
2. Pretty print iSCSI NVRAM data.
3. Makefile cleanup and associated changes.

Version 8.18.10.0 (Jan 25, 2017)
===============================
Internal FW 8.18.12.0

Fixes
-----
1. Fix exporting stale IP info for DHCP BFS
2. Fix NULL pointer dereference error during device recovery.
3. Avoid repetitive qedi_get_task_idx in tmf.

Version 8.18.9.0 (Jan 19, 2017)
===============================
Internal FW 8.18.10.0

Fixes
-----
1. export port, vlan and origin attributes to set bootproto

Version 8.18.8.0 (Jan 12, 2017)
===============================
Internal FW 8.18.9.0

Fixes
-----
1. Update of HSI files, interface version and module version bump.
2. Update Copyright string.
3. Copy opcode from libiscsi for nopout and logout ops.

Version 8.18.6.0 (Dec 16, 2016)
===============================
Internal FW 8.18.7.0

Fixes:
------
1. Fix multiple sessions instantiation using different ISID.
2. Update Copyright to Cavium Inc.
3. Fix Xenserver 6.5 compilation errors
4. Update the opcode for TUR
5. Update dma_boundary macro
6. Fix access to get the correct nvram iSCSI block.
7. Enable correct features for RHEL 6.9 compile.
8. CQ89198: Fix panic in unload path.

Version 8.18.4.1 (Dec 8, 2016)
===============================
Internal FW 8.18.5.0

Fixes:
------
None.

Version 8.18.4.0 (Nov 29, 2016)
===============================
Internal FW 8.18.5.0

Fixes:
------
1. replace qed ops set_id with set_name
2. use correct macro for set_fp_int
3. use single variable num_queues
4. Correct the print of boot target LUN

Version 8.18.3.0 (Nov 22, 2016)
===============================
Internal FW 8.18.4.0

Fixes:
------
1. Add Oracle Linux 7.2 and UEK R4 U1 support.
2. Allocate global CQ resource based on num_cqe
3. Remove set_id qed ops
4. Clear r/w flags for TUR command
5. Add support for Xenserver 7.0

Version 8.18.1.0 (Nov 04, 2016)
===============================
Internal FW 8.18.1.0

Fixes:
------
1. Revert "Do not set dma_boundary in scsi_host_template." causing
   kernel panic in IO path and causing data corruption issues.
2. Revert "Use one define for the maximum number of
   scatter/gather entries" causing data corruption issue.

Version 8.18.0.0 (Oct 21, 2016)
===============================
Internal FW 8.18.0.0

Fixes:
------
1. use ctrl_flag to identify IP type
2. Generalize port idx calculations
3. Delay iscsi transport registration to driver probe time
4. Do not set dma_boundary in scsi_host_template.
5. Use one define for the maximum number of scatter/gather entries
6. Remove warn_on for untracked cleanup

Version 8.14.4.0 (Sept 19, 2016)
===============================
Internal FW 8.14.7.0

Fixes:
------
1. Add Ubuntu 14.04 and 16.04 support

Version 8.14.3.0 (Sept 8, 2016)
===============================
Internal FW 8.14.6.0

Fixes:
------
1. CQ87041 - Fix soft lockup in qedi_percpu_io_thread
2. CQ88744 - Set IO path max_send_pdu_length to max_xmit_dlength

Version 8.14.2.0 (Aug 26, 2016)
===============================
Internal FW 8.14.4.0

Fixes:
------
1. Add 4-cache sgl support
2. Add Arrow Head (AH) Device IDs support

Version 8.10.7.0 (Jul 12, 2016)
===============================
Internal FW 8.10.8.0

Fixes:
------
1. Print driver banner at init time
2. CQ86651 - Use atomic variables in cleanup IO path
3. CQ87385 - Correctly check return status in cleanup path
4. Add upstream kernel support
5. blk_mq - export nr_hw_queues to SCSI ML
6. Add a hotcpu notifier for IO threads

Version 8.10.6.0 (Jun 21, 2016)
===============================
Internal FW 8.10.7.0

Fixes:
------
1. CQ87070: Fix compilation errors for different OS.

Enhancements:
-------------
1. Add Boot from SAN support
NOTE: For BFS to work correctly the MFW must be version 8.10.0.0 or higher.

Version 8.10.5.0 (Jun 14, 2016)
===============================
Internal FW 8.10.7.0

Fixes:
------
1. CQ86604: Correctly return conn_start return code
2. Code cleanup for Upstream

Version 8.10.3.0 (May 10, 2016)
===============================
Internal FW 8.10.5.0

Fixes:
------
1. Remove I/O node if cleanup timesout.
2. Update to changes for data underrun handling.
3. Add QEDI driver to INITRD

Version 8.10.2.0 (Apr 21, 2016)
===============================
Internal FW 8.10.4.0

Fixes:
------
1. Changes for data underrun handling.
2. Remove RQ PBL address from the list
3. CQ86050: Correctly update link_state during probe.
4. Add boot entries in the session sysfs.
5. Fix cmd data copy for iscsi tmf response
6. CQ84854: Correction in LL2 Rx processing

Version 8.10.1.0 (Mar 23, 2016)
===============================
Internal FW 8.10.2.0

Fixes:
------

1. Add RQ BDQ processing
2. Fix NULL pointer dereference during recovery handling.
3. Show port_state and link speed in sysfs for application.
4. Fix tmf response header corruption.
5. Fix compile error due to redefinition
6. Fix cleanup timeout for login task.
7. Fix for iscsi stats

Version 8.10.0.0 (Feb 26, 2016)
===============================
Internal FW 8.10.1.0

Fixes:
------

1. Fix qedi_recover_all_conns iteration logic.
2. Add schedule recovery handler.
3. Use internal probe/remove function.
4. tmf changes to handle non sleepable context correctly.
5. Add iscsi cid to the IO trace
6. Fix crash due to uninitialized HW error handler.
7. Add NOP and tmf handling to active cmd list.
8. Wait for pending tmf work to complete.
9. Remove compilation warnings.
10. Add login, logout and text pdu handling to active cmd list.
11. Do not issue drain after abort cleanup times out.
12. Validate the shost in PATH_UPDATE
13. Restore compilation fix from HSI change
14. Create work for offload conn handling.
15. Update get host param callback to get IP address.

Version 8.7.12.0 (Feb 02, 2016)
==============================
Internal FW 8.7.6.0

Fixes:
------
1. Do not unblock session when recovery in progress.
2. Post LUN reset cleanup IOs only for that LUN.
3. Fix NULL pointer access upon LUN reset from cleanup all IO.
4. Fix cmd list node leakage upon LUN reset.
5. Fix access to stale wait queue after connection recovery.
6. Cleanup tmf work upon ep disconnect and qedi remove.
7. Fix TID leakage when cleanup for reset TMF timesout.
8. CQ84626: Correct tmf cmd_sn endianness.
				     
Version 8.7.9.0 (Jan 22, 2016)
==============================
Internal FW 8.7.6.0

Fixes:
------
1. Correctly calculate host mtu size. 

Version 8.7.8.0 (Jan 14, 2016)
==============================
Internal FW 8.7.5.0

Fixes:
------
1. CQ84051: Add support for host jumbo mtu change. 
2. Add data digest error recovery.

Version 8.7.6.0 (Dec 30, 2015)
==============================
Internal FW 8.7.5.0

Version 8.7.5.0 (Dec 18, 2015)
==============================
Internal FW 8.7.4.0

Fixes:
------
1. Remove all cmdq/cmdq_pbl allocations.
2. Add fw_debug module parameter.
3. Change DEF_MAX_RT_TIME from 15 sec to 8 sec.
4. Additional checks for sgl processing
5. Check for transport cls session state before recovery.
6. Reset cleanup request and completion counters.
7. CQ83951: Fix scheduling while atomic in cleanup all io.

Version 8.7.4.0 (Dec 04, 2015)
==============================
Internal FW 8.7.3.0

Fixes:
------
1. Add more checks for fastpath io.
2. Correctly fill task context during fast read IO.
3. Add per cpu thread for cqe response completion.
4. Set CPU affinity to the MSI-X vectors.

Version 8.7.3.0 (Nov 23, 2015)
==============================
Internal FW 8.7.2.0

Fixes:
------
1. Return correct status in xmit_task. 
2. Increase global task context pool to 4k.
3. Miscellaneous fixes for iSCSI command recovery. 

Version 8.7.2.0 (Nov 18, 2015)
==============================
Internal FW 8.7.1.0

Version 8.7.0.0 (Nov 06, 2015)
=========================================
QED Version 8.7.0.0 released version
Internal FW 8.7.0.0

Fixes:
------
1. Prevent system crash in qedi_data_avail() if uio_dev is NULL.
2. Correct the handling of offload connection failures
3. Fix cleanup task executed twice for Abort TMF.
4. Reserve first idx of fw task_context.

Version 8.6.0.0 (Oct 16, 2015)
=========================================
QED Version 8.6.0.0 released version
Internal FW 8.6.0.0

Fixes:
------
1. Check the DSL for unsolicited PDUs
2. Get RQ prod db for different MSI-X vectors

Version 8.5.8.0 (Sept 22, 2015)
=========================================
QED Version 8.5.8.0 released version
Internal FW 8.5.6.0

Fixes:
------
1. Enable tcp timestamp for 8.5.6.0
2. CQ81502: Add changes to support out of order.
3. CQ81864: Add the VLAN fixes for LL2 path.
4. CQ81727: Split the cq and rq queues between
	    the connections.

Version 8.5.6.0 (August 28, 2015)
=========================================
QED Version 8.5.6.0 released version
Internal FW 8.5.4.0

Fixes:
------
1. Added support for Abortive connection recovery.
2. Added support for TMF recovery.
3. Added ooo_enable module param.
4. Disable tcp timestamp for 8.5.4.0

Version 8.5.3.0 (July 31, 2015)
=========================================
QED Version 8.5.3.0 released version
Internal FW 8.5.2.0

Fixes:
------
1. CQ80687: Fix iSCSI ios not working with the 40g
	    switch default setup.
2. Added support for CentOS in Makefile.
3. Fix load time issue on SLES11 SP4.

Version 8.5.0.0 (July 27, 2015)
=========================================
QED Version 8.5.2.0 released version
Internal FW 8.5.1.0

Fixes:
------
1. CQ80688: Throughput is very low with latest QED.
2. Add support for grcdump from the driver.

Version 8.00.09.00.00.00-k (June 19, 2015)
=========================================
QED Version 8.3.6.0 released version
Internal FW 8.3.9.0

1. Increase max_rt time to 15 sec.
2. Fix for Unsolicited NOP-In Updating RQ cons.

Version 8.00.08.00.00.00-k (June 05, 2015)
=========================================
QED Version 8.3.6.0 released version
Internal FW 8.3.9.0

1. Updated qed API supported version.

Version 8.00.07.00.00.00-k (May 21, 2015)
=========================================
QED Version 8.3.5.0 released version
Internal FW 8.3.8.0

1. Updated qed API supported version.

Version 8.00.06.00.00.00-k (May 20, 2015)
=========================================
QED Version 8.3.4.0 released version
Internal FW 8.3.7.0

1. Fixes for I/O write ordering.
2. CQ79612 - Fix multiple times login-logout issue.
3. link Down issue - Memset link_params data structure.

Version 8.00.05.00.00.00-k (May 08, 2015)
=========================================
QED Version 8.3.4.0 released version
Internal FW 8.3.7.0

1. Compilation code changes required for HSI 8.3.7.0

Version 8.00.4.00.00.00-k (May 07, 2015)
=========================================
QED Version 8.3.3.0 released version
Internal FW 8.3.6.0

1. Fix multiple login fix fail issue due to wrong cid.
2. Updated HSI for internal firmware 8.3.6.0

Version 8.00.03.00.00.00-k (Apr 23, 2015)
=========================================
QED Version 8.3.2.0 released version
Internal FW 8.3.5.0

1. Fix list corruption issue during conn recovery.
2. Added Slow-IO path code and change BD split logic.
3. tmf recovery path fixes. 

Version 8.00.02.00.00.00-k (Apr 10, 2015)
=========================================
QED Version 8.3.1.0 provided by Sony
Internal FW 8.3.4.0

1. Multiple distro support added. 
	RHEL7.x, RHEL6.x, SLES12, SLES11sp3
2. TMF support added. 

Version 8.00.01.00.00.00-k (Mar 17, 2015)
=========================================
QED Version: 8.2.6.0 + iSCSI Fixes
Internal FW 8.2.11.0

Fixes:
-----
1. First EIT drop.

