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

Version 8.70.12.0 (Sep 23, 2022)
================================
Internal FW 8.70.4.0

Enhancements:
-------------
 1. Request:    FJT-8771: Add module level parameter to tune tx timeout.

Version 8.70.11.0 (Sep 07, 2022)
================================
Internal FW 8.70.4.0

Fixes:
------
 1. Problem:    FJT-8603: few adapters in /mctp endpoint missing.

    Change:     Prevents OS to go into suspend/resume state.

    Introduced: Day 1.

    Relevance:  L2.

Enhancements:
-------------
 1. Request:    Klocwork fixes.

Version 8.70.10.0 (Jun 28, 2022)
================================
Internal FW 8.70.4.0

Version 8.70.9.0 (Jun 21, 2022)
===============================
Internal FW 8.70.4.0

Version 8.70.8.0 (Jun 15, 2022)
===============================
Internal FW 8.70.4.0

Fixes:
------
 1. Problem:    FJT-8476: [ethtool -L leads to crash] AH : Hw error while
                changing rings-descriptor.

    Change:     Do not attempt to wake up tx queues while interface
                is going down.

    Introduced: 8.59.5.0.

    Relevance:  L2.

Version 8.70.7.0 (Jun 07, 2022)
===============================
Internal FW 8.70.4.0

Fixes:
------
 1. Problem:    Set pointers to NULL after free and check for ndev NULL.

    Change:     1) Set edev->fp_array as NULL in qede_free_fp_array().
                2) Set qede_dbgfs_dir as NULL in qede_remove_debugfs().
                3) Check ndev for NULL in __qede_probe().

    Introduced: Day 1.

    Relevance:  AER and HW err recovery.

Version 8.70.6.0 (May 11, 2022)
===============================
Internal FW 8.70.4.0

Enhancements:
-------------
 1. Request:    [FW] For better debug ability, split mac_filter_discard packets
                by type/class into separate counters.

Version 8.70.5.0 (Apr 20, 2022)
===============================
Internal FW 8.70.3.0

Fixes:
------
 1. Problem:    FJT-8311 Linux - Communication failure when MTU is
                larger than 4k.

    Change:     Handle extended BD case in aggregation start flow.

    Introduced: 8.59.5.0.

    Relevance:  L2 (fastpath).

Version 8.70.4.0 (Mar 07, 2022)
===============================
Internal FW 8.70.3.0

Fixes:
------
 1. Problem:    FJT-8026 While using PTimekeeper from FSMLabs
                the bnx2x driver produces escessive log messages.

    Change:     Reduce verbosity.

    Introduced: Day 1.

    Relevance:  PTP.

 2. Problem:    FJT-8111 -SRIOV : VM system gets hanged when
                loading qede driver on vf in VM.

    Change:     Null check for root pcie port.

    Introduced: CL422760.

    Relevance:  qede.

 3. Problem:    FJT-8005 Failed to recover the E4_BB device after triggering
                recovery followed by ifdown/ifup.

    Change:     If qede_close() triggered when device is in recovery, perform
                recovery path unload. If qede_open() triggered under recovery,
                avoid doing load.

    Introduced: Day 1.

    Relevance:  Recovery.

Version 8.70.3.0 (Jan 28, 2022)
===============================
Internal FW 8.70.2.0

Fixes:
------
 1. Problem:    TPA aggregation does not account for MAX_SKB_FRAGS.

    Change:     fix the vport_start configuration for tpa to account
                for MAX_SKB_FRAGS.

    Introduced: Day 1.

    Relevance:  fastpath.

 2. Problem:    FJT-7787 - Coalescing counter stop incrementing after toggling
                MTU of PF & VF.

    Change:     add netdev_update_features call to during mtu update.

    Introduced: Day 1.

    Relevance:  qede.

Enhancements:
-------------
 1. Request:    Add support for displaying vf stats via 'ip -s link show <pf>'.

 2. Request:    FJT-2062: Add xdp_pass value to ethtool stats display.

 3. Request:    Add relevant fastpath barriers to support ARM.

Version 8.70.2.0 (Jan 13, 2022)
===============================
Internal FW 8.70.1.0

Fixes:
------
 1. Problem:    FJT-506 : tx-udp_tnl-segmentation is not getting disabled
                correctly.

    Change:     tx-udp_tnl-segmentation should also disable
                tx-udp_tnl-cksum-segmentation for proper functioning.

    Introduced: Day 1.

    Relevance:  vxlan offload.

 2. Problem:    FJT-1689: Supported FEC Modes and Advertised FEC Modes say
                "Not reported".

    Change:     Populate FEC capabilities in the link_settings.

    Introduced: Day 1.

    Relevance:  ethtool link display.

 3. Problem:    FJT-6653: EDDC: system crash observed when ramrod struck is
                injected followed by interface MTU change.

    Change:     Handle load and unload error flows gracefully.

    Introduced: Day 1.

    Relevance:  L2.

Enhancements:
-------------
 1. Request:    Support of RDMA-ROCE reset recovery.

 2. Request:    FJT-5085: New pause flood counters for ecore/linux driver.

Version 8.70.1.0 (Dec 20, 2021)
===============================
Internal FW 8.70.0.0

Fixes:
------
 1. Problem:    Update qede driver to support Linux-5.16-rc1.

    Change:     CL 421258 missed to update declaration of qede_set_coalesce()
                in qede/qede.h.

    Introduced: Day 1.

    Relevance:  Set/get coalesce.

 2. Problem:    FJT-7026: AER : Crash is seen with AER uncorrectable error
                "uncor-comp-time".

    Change:     changes done to make sure both, PF FLR & qed_cleanup, gets
                called during AER recovery. qede_probe moved to qede_io_resume
                callback because in certain configuration driver does not
                receive the slot_reset callback.

    Introduced: Day 1.

    Relevance:  AER.

Enhancements:
-------------
 1. Request:    Set affinity hint for IRQ & numa aware memory
                allocation.

 2. Request:    Reduce number of RX and TX queues in kdump kernel for memory
                usage reduction.

 3. Request:    Support for disabling of devlink recovery using
                err_flags_override.

 4. Request:    Support latest upsteam kernel (5.16.x).

 5. Request:    Add support for VF queue selection based on dst udp port/vlan.

Version 8.70.0.0 (Dec 02, 2021)
===============================
Internal FW 8.70.0.0

Version 8.59.6.0 (Nov 16, 2021)
===============================
Internal FW 8.59.3.0

Fixes:
------
 1. Problem:    FJT-7026: HPE BSN 1.60:RHEL8.4: AER : Crash is seen with AER
                uncorrectable error "uncor-comp-time".

    Change:     Correctly determine whether hot reset has occurred or is in
                progress.

    Introduced: Day 1.

    Relevance:  AER.

Version 8.59.5.0 (Oct 27, 2021)
===============================
Internal FW 8.59.2.0

Fixes:
------
 1. Problem:    HPE BSN 1.60 : RHEL8.4 GA: EDDC: system crash observed
                when ramrod struck is injected followed by interface MTU
                change.

    Change:     Preserve state during reload.

    Introduced: Day 1.

    Relevance:  L2/EDDC.

 2. Problem:    FJT-710 AHP-2x50G ,4x50G: Server crash while running TCP traffic
                on all ports-qede_tpa_end.

    Change:     Handle errors in TPA flows gracefully.

    Introduced: Day 1.

    Relevance:  Fastpath.

 3. Problem:    FJT-5424 - Server crash observed with error recovery on
                ipv4+ipv6 traffic on NPAR.

    Change:     Retain cdev pointer across the recovery process.

    Introduced: Day 1.

    Relevance:  Error recovery.

Enhancements:
-------------
 1. Request:    Backporting AER related CLs (415796/415797).

Version 8.59.4.0 (Sep 28, 2021)
===============================
Internal FW 8.59.1.0

Fixes:
------
 1. Problem:    Driver does not recover from tx timeout automatically.

    Change:     Mark tx timeout error recoverable.

    Introduced: Day 1.

    Relevance:  L2 tx timeout.

Enhancements:
-------------
 1. Request:    Add support to tune tx watchdog timeout through debugfs.

Version 8.59.3.0 (Sep 08, 2021)
===============================
Internal FW 8.59.1.0

Fixes:
------
 1. Problem:    FJT-7309 EDDC: "dmae_err" is not creating any dump
                when injected twice in /tmp from echo hook.

    Change:     Make fw_assert/dame_err recoverable.

    Introduced: DAY 1.

    Relevance:  EDDC - fw_assert/dmae_err.

 2. Problem:    NULL pointer dereference in lag_modify during driver unload.

    Change:     Before calling lag_modify, check whether lag_cdev isn't NULL.

    Introduced: Day 1.

    Relevance:  RoCE Bonding.

 3. Problem:    Default coalescing values are not actually configured
                to the device or in storms ram.

    Change:     Configure default values to device on interface load.

    Introduced: Day 1.

    Relevance:  Coalescing.

 4. Problem:    RHBZ1756963 - Unable to handle kernel NULL pointer dereference.

    Change:     Fix race between shutdown and link event related to the rdma
                work-queue.

    Introduced: Day1.

    Relevance:  rdma.

 5. Problem:    PCIe error status register need to be cleared during the AER.

    Change:     Invoke pci_cleanup_aer_uncorrect_error_status() during recovery.

    Introduced: Day 1.

    Relevance:  AER with older kernels (4.19).

Enhancements:
-------------
 1. Request:    Improve tx data dump on tx timeout.

 2. Request:    FJT-6380 - add chain dump support via debugfs and tx timeout.

 3. Request:    PCI reset support.

 4. Request:    Fix retpoline build warnings on older distros with newer kernel.

 5. Request:    Add support of devlink interface.

Version 8.59.2.0 (Aug 16, 2021)
===============================
Internal FW 8.59.1.0

Version 8.59.1.0 (Aug 09, 2021)
===============================
Internal FW 8.59.1.0

Fixes:
------
 1. Problem:    stack trace warning in ethtool_check_ops due missing
                coalescing params in ethtool_ops in latest kernel.

    Change:     Backport c9312022db - qede: reject unsupported
                coalescing.

    Introduced: upstream kernel update.

    Relevance:  QEDE load.

Version 8.59.0.0 (Jul 13, 2021)
===============================
Internal FW 8.59.0.0

Version 8.58.11.0 (Jul 07, 2021)
================================
Internal FW 8.58.10.0

Enhancements:
-------------
 1. Request:    Backport bc1c5745d779 ("qlogic/qede: Add XDP frame size to
                driver") from upstream driver.

Version 8.58.10.0 (Jun 22, 2021)
================================
Internal FW 8.58.9.0

Version 8.58.9.0 (Jun 09, 2021)
===============================
Internal FW 8.58.8.0

Version 8.58.8.0 (Jun 04, 2021)
===============================
Internal FW 8.58.7.0

Version 8.58.7.0 (May 24, 2021)
===============================
Internal FW 8.58.6.0

Version 8.58.6.0 (May 12, 2021)
===============================
Internal FW 8.58.5.0

Version 8.58.5.0 (May 06, 2021)
===============================
Internal FW 8.58.3.0

Version 8.58.4.0 (May 01, 2021)
===============================
Internal FW 8.58.3.0

Fixes:
------
 1. Problem:    FJT-5919: 10GBTx ports down with qed_fw_assertion:501.

    Change:     Changes to discard skbs larger than 9700B(Max size of
                non-LSO packet).

    Introduced: Day 1.

    Relevance:  Fastpath(QEDE).

Version 8.58.3.0 (Apr 22, 2021)
===============================
Internal FW 8.58.1.0

Version 8.58.2.0 (Apr 15, 2021)
===============================
Internal FW 8.58.1.0

Version 8.58.1.0 (Apr 12, 2021)
===============================
Internal FW 8.58.0.0

Version 8.58.0.0 (Apr 11, 2021)
===============================
Internal FW 8.58.0.0

Version 8.57.4.0 (Apr 06, 2021)
===============================
Internal FW 8.57.2.0

Fixes:
------
 1. Problem:    FJT-4637 NVMe-oF/TCP Target and Host: Host and Target
                Panic While unload Driver after running Traffic for
                SW-SW nvmetcp combination.

    Change:     Issue introduced by FJT-3990 , do cancel_delayed_work_sync
                after unregister_netdev.

    Introduced: 8.57.1.0.

    Relevance:  Unload Driver.

 2. Problem:    FJT-4010 - AH TCP traffic do not run on QinQ Vlan.

    Change:     Changes to discard unsafe features for skb and accommodate
                required MTU for QinQ.

    Introduced: 8.37.12.0 [storm 8.37.3.0].

    Relevance:  Fastpath(QinQ).

 3. Problem:    Compilation error on kernel 5.12.

    Change:     Compatibility related changes.

    Introduced: 8.57.3.0.

    Relevance:  QEDE Compilation.

Version 8.57.3.0 (Feb 23, 2021)
===============================
Internal FW 8.57.1.0

Fixes:
------
 1. Problem:    FJT-4906/4848 - Ubuntu kernel QL41xxx NIC Kubernetes
                internal DNS failure.

    Change:     Disable offloads for IPIP tunnel packets at run time.

    Introduced: 8.4.0.0.

    Relevance:  Tunneling.

Version 8.57.2.0 (Dec 27, 2020)
===============================
Internal FW 8.57.1.0

Version 8.57.1.0 (Dec 07, 2020)
===============================
Internal FW 8.50.18.0

Fixes:
------
 1. Problem:    FJT-3990 Kernel crash on rmmod qede while automatic debug
                collection.

    Change:     Stop the sp_task during unload to avoid running qede_sp_task
                even if they are schedule during removal process.

    Introduced: Day 1.

    Relevance:  qede unload.

Version 8.57.0.0 (Nov 11, 2020)
===============================
Internal FW 8.50.18.0

Fixes:
------
 1. Problem:    FJT-4754 - DQL kernel panic and VM crash Observed.

    Change:     Perform netdev txq_queue reset after stopping the txq.

    Introduced: Day 1.

    Relevance:  Reload paths.

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

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

Fixes:
------
 1. Problem:    FJT-4203 - AHP : 2x25 : BATMAN II : getting Tx timeout on 2nd
                interface after PBF recovery within 1 hour with heavy traffic.

    Change:     Add modulo when incementing sw_tx_cons.

    Introduced: Day 1.

    Relevance:  AHP.

Enhancements:
-------------
 1. Request:    EDDC standard: driver debug data.

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

 1. Problem:    FJT-4037/JIT-176631 [R750] RHEL 7.9 will crash
                when running Burnin and iperf stress.

    Change:     Handle skb allocation gracefully.

    Introduced: 8.30.3.0.

    Relevance:  Fastpath.

 2. Problem:    FJT-4135: Cannot recover connection after Tx timeout.

    Change:     Clear netdev txq state during the internal reload paths.

    Introduced: Day 1.

    Relevance:  Reload paths.

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

Fixes:
------
 1. Problem:    FJT-1076 - AH EDDC : CallTrace at free_irq after injecting
                fw_assert.

    Change:     Fixed with free_cpu_rmap add before calling qede_sync_free_irq.

    Introduced: While testing fw_assert followed rmmod.

    Relevance:  All.

 2. Problem:    FJT-4006 - Excessive XDP printout.

    Change:     Continous display "Device doesn't support XDP" every 30s,
                fixed with print once.

    Introduced: Day 1.

    Relevance:  All.

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

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

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

Version 8.53.1.0 (Jun 18, 2020)
===============================
Internal FW 8.50.16.0

Version 8.53.0.0 (May 12, 2020)
===============================
Internal FW 8.50.16.0

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

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

Fixes:
------
 1. Problem:    CQ108333 - Recovery Stuck after inducing Non-Fatal Error if VFs
                are created on both Ports in Single Function.

    Change:     Remove VFs prior to initiating the AER recovery.

    Introduced: Day1.

    Relevance:  AER.

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

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

Fixes:
------
 1. Problem:    CQ107923 - LinuxOverWindows- Traffic doesn't flow through VF in
                UBUNTU, SLES and RH6.10.

    Change:     Init VF mac from bulletin before registering netdevice.

    Introduced: Day 1.

    Relevance:  SR-IOV (UBUNTU, SLES and RH6.10 VMs).

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

Fixes:
------
 1. Problem:    CQ107976 - AER-RDMA: injecting Uncorrectable error while RDMA
                traffic running causes Probe to fail for Ethernet Function.

    Change:     Invoke mfw recovery for handling the PCIe errors.

    Introduced: 8.50.10.0.

    Relevance:  AER.

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

Enhancements:
-------------
 1. Request:    Add ethtool private flags for Enhanced System Lockdown status.

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

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

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

Fixes:
------
 1. Problem:    CQ107962 - AER-Storage: System Crash if Non-Fatal Error is
                injected with storage enabled.

    Change:     Clear cdev pointer after it's freed in the remove path.

    Introduced: 8.50.10.0.

    Relevance:  AER.

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

Fixes:
------
 1. Problem:    Cont00107989 - fastlinq doesn't compile on newer kernels.

    Change:     Kernel compatibility changes.

    Introduced: NA.

    Relevance:  Newer kernels (RHEL8.2/SLES15SP2).

Version 8.50.15.0 (Dec 30, 2019)
================================
Internal FW 8.50.12.0

Fixes:
------
 1. Problem:    CQ107192 - JIT-147414 RedHat KVM OpenStack 11 with CETH Storage
                Connectivity issues on heavy load using QL41112.

    Change:     Fix multicast mac configuration flow.

    Introduced: Day1.

    Relevance:  All.

 2. Problem:    CQ107619 - System reboot test with SRIOV VFs created
                causes kernel panic.

    Change:     Handle null netdev case in removal flow.

    Introduced: Day1.

    Relevance:  All.

 3. Problem:    Newer kernels doesn't disable hw gro when xdp is attached.

    Change:     Disable hw gro when xdp prog is attached to the device.

    Introduced: 8.40.12.0.

    Relevance:  Kernel with NETIF_F_GRO_HW.

Enhancements:
-------------
 1. Request:    RoCE Bonding: Add option to perform failback only after DCBX is
                negotiated on the port.

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

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

Enhancements:
-------------
 1. Request:    Print status block debug messages on TX timeout.

Version 8.50.12.0 (Nov 28, 2019)
================================
Internal FW 8.50.10.0

Version 8.50.11.0 (Nov 14, 2019)
================================
Internal FW 8.42.4.0

Enhancements:
-------------
 1. Request:    Disable device's carrier in case of TX timeout.

Version 8.50.10.0 (Nov 04, 2019)
================================
Internal FW 8.42.4.0

Fixes:
------
 1. Problem:    CQ106679 - Running HW ptp4l & trigger_recovery on same pf gives
                system crash.

    Change:     Initialize PTP clock structures by default during the probe.

    Introduced: 8.30.0.0.

    Relevance:  PTP.

Enhancements:
-------------
 1. Request:    Add PCIe Advanced Error Recovery (AER) support.

Version 8.45.0.0 (Oct 16, 2019)
===============================
Internal FW 8.42.4.0

Version 8.42.9.0 (Oct 03, 2019)
===============================
Internal FW 8.42.3.0

Version 8.42.8.0 (Sep 19, 2019)
===============================
Internal FW 8.42.1.0

Enhancements:
-------------
 1. Request:    Backport 9e54ba7c37 (qed*: Fix size of config attribute dump)
                from upstream driver.

Version 8.42.7.0 (Sep 10, 2019)
===============================
Internal FW 8.42.1.0

Enhancements:
-------------
 1. Request:    Add ethtool -w/W support. Backport support from upstream driver.
                68f5364c69 (qede: Add support for reading the config id attrs).
                c089e32afb (qede: Add support for dumping the grc data).

Version 8.42.6.0 (Sep 02, 2019)
===============================
Internal FW 8.42.1.0

Fixes:
------
 1. Problem:    CQ103111 - AH: Traffic not getting redirected to macvlan
                on applying tc offload rules.

    Change:     Fix issue in queue allocation flow of macvlan offload
                instance creation.

    Introduced: 8.37.13.0.

    Relevance:  macvlan offload.

 2. Problem:    Qede doesn't compile for SLES12.5.

    Change:     Fix ndo_select_queue() compatibility.

    Introduced: 8.42.5.0.

    Relevance:  SLES12.5.

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

Fixes:
------
 1. Problem:    Fix compilation failures for newer kernels like rhel8.1.

    Change:     Adopt flow infrastructure changes from upstream.

    Introduced: N/A (due to kernel changes).

    Relevance:  RHEL8.1.

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

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

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

Fixes:
------
 1. Problem:    CQ106611 - compilation failure on Citrix XS 7.1CU2.

    Change:     Use struct new_ethtool_ops defined in Citrix kernel
                for XS 7.1CU2 and assign it as ethtool_ops of netdev
                in order to use get_link_ksettings and set_link_ksettings
                callbacks of ethtool.

    Introduced: Day 1.

    Relevance:  Citrix XS 7.1CU2.

Version 8.42.1.0 (Jun 28, 2019)
===============================
Internal FW 8.40.32.0

Fixes:
------
 1. Problem:    ifconfig down/up on secondary interface in bond causes traffic
                failure.

    Change:     Set the new bonding configuration immideiately on link change
                event.

    Introduced: Day 1.

    Relevance:  RDMA bonding.

 2. Problem:    CQ105761 - VF RDMA: VM crashed- unload qedr driver on HV while
                running 100 ib_send_bw sessions on VMs "Null pointer
                handle-Workqueue: iov-00:08.00 qed_iov_vf_task [qed]".

    Change:     Set rdma_wq to NULL after destroying it, and prevent from adding
                rdma events if this wq is NULL.

    Introduced: VF-RDMA day 1.

    Relevance:  VF-RDMA.

Enhancements:
-------------
 1. Request:    CQ105577 - Add support for RDMA bonding on 4 port AH modules.

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

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

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

Fixes:
------
 1. Problem:    BZ1703778 - Driver spins reading the tx timestamp.

    Change:     Report failure if Tx-timestamp is not recorded in specific
                amount of time.

    Introduced: Day 1.

    Relevance:  PTP.

 2. Problem:    CQ106120 - qede failed to compile on rhel7.7.

    Change:     Handle XDP flow compatibility.

    Introduced: Day 1.

    Relevance:  rhel7.7.

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

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

Version 8.40.22.0 (Apr 05, 2019)
================================
Internal FW 8.40.27.0

Version 8.40.21.0 (Mar 29, 2019)
================================
Internal FW 8.40.27.0

Version 8.40.20.0 (Mar 22, 2019)
================================
Internal FW 8.40.26.0

Fixes:
------
 1. Problem:    PF drops packets with zeroed hop limit / ttl instead of passing
                on to stack (RFC 8200).

    Change:     Do not configure device to drop such packets.

    Introduced: Day 1.

    Relevance:  Rx processing of IP packwets whoe hop limit or ttl fields
                are zero.

 2. Problem:    Coverity warning - dead code in qede_ethtool_to_link_fec().

    Change:     Fix ETHTOOL_FEC bit values.

    Introduced: 8.40.1.0.

    Relevance:  Ethtool + FEC.

Enhancements:
-------------
 1. Request:    VF RDMA - Add basic rdma support.

Version 8.40.19.0 (Feb 22, 2019)
================================
Internal FW 8.40.25.0

Fixes:
------
 1. Problem:    CQ104784 - Internal loopback test fails with jumbo mtu config.

    Change:     Limit the packet length of loopback traffic to 1.5k.

    Introduced: Day 1.

    Relevance:  Ethtool -t.

Version 8.40.18.0 (Jan 30, 2019)
================================
Internal FW 8.40.25.0

Version 8.40.17.0 (Jan 29, 2019)
================================
Internal FW 8.40.24.0

Fixes:
------
 1. Problem:    Potential null dereference in qede_dbg_tx_timeout_cmd_write().

    Change:     Dereference edev only after sanity.

    Introduced: 8.40.16.0.

    Relevance:  TX timeout test.

Enhancements:
-------------
 1. Request:    CQ104913 - Support RHEL8.0 snap4.

Version 8.40.16.0 (Jan 18, 2018)
================================
Internal FW 8.40.24.0

Enhancements:
-------------
 1. Request:    Add a debugfs node to generate TX timeout.

Version 8.40.15.0 (Jan 11, 2018)
================================
Internal FW 8.40.24.0

Enhancements:
-------------
 1. Request:    Report TX timeout to MFW for AHS.

Version 8.40.14.0 (Dec 21, 2018)
================================
Internal FW 8.40.24.0

Fixes:
------
 1. Problem:    CQ103874 - when VF removed from running VM, fails to
                get probed on hypervisor.

    Change:     Add retry mechanism by VF if VF acquire might get time out
                due to VF is being disabled at the same time.

    Introduced: Day 1.

    Relevance:  SR-IOV.

Version 8.40.13.0 (Nov 26, 2018)
================================
Internal FW 8.40.23.0

Fixes:
------
 1. Problem:    CQ102666: Multiple qedr_bond are not created with multiple NICs
                on same machine.

    Change:     qedr_bond# devices will be created for all zero PCI (PF0)
                devices which LAG is enabled on them. In such a case, RDMA
                device won't be created for PF1 device on the same NIC.

    Introduced: Day1.

    Relevance:  Bonding.

Enhancements:
-------------
 1. Request:    Add support for Arrow Head-T MCM chip number 0x80d0.

 2. Request:    Add a statistic for a case where driver drops tx packet
                due to memory allocation failure.

Version 8.40.12.0 (Nov 05, 2018)
================================
Internal FW 8.40.23.0

Fixes:
------
 1. Problem:    CQ101706: RoCE traffic stops after performing down-up eth0/eth1
                in bond0.

    Change:     Transition traffic back to the port after it is fully
                initialized and tx is enabled on it.

    Introduced: Day1.

    Relevance:  Bonding.

 2. Problem:    Bonding stop working after ifdown->ifup to PF1.

    Change:     Check if lag is disabled also for PF1 interface.

    Introduced: Day1.

    Relevance:  Bonding.

 3. Problem:    CQ103918, CQ104151 - Traffic may not run properly when running
                traffic which includes tunneling over a vlan interface,
                and HW GRO offload capability is enabled.

    Change:     Notify to kernel about existance of a vlan on the aggregated
                tunneled packets and set the network header offset accordingly.

    Introduced: Day1.

    Relevance:  HW GRO + Tunneling + Vlan.

 4. Problem:    JIT-110074 PE R740xd OEM- NDC QLogic QL41162HMRJ - DPN 0D1WT
                no link status  network stats reported on OS side CentOS 6.9
                and 7.0.

    Change:     Ethtool "Supported ports" - will show port types based on
                media type and bord config instead of always showing FIBRE.

    Introduced: Day1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Backport NETIF_F_GRO_HW change from upstream.

Version 8.40.11.0 (Oct 12, 2018)
================================
Internal FW 8.40.23.0

Enhancements:
-------------
 1. Request:    Support netconsole.

Version 8.40.10.0 (Oct 05, 2018)
================================
Internal FW 8.40.23.0

Fixes:
------
 1. Problem:    Packets with incorrect checksums are getting dropped.

    Change:     Do not drop rx-checksum invalidated packets, pass those frames
                to the stack with CHECKSUM_NONE indication in the skb.

    Introduced: Day1.

    Relevance:  All.

Version 8.40.9.0 (Sep 07, 2018)
===============================
Internal FW 8.40.23.0

Version 8.40.8.0 (Aug 31, 2018)
===============================
Internal FW 8.40.23.0

Version 8.40.7.0 (Aug 26, 2018)
===============================
Internal FW 8.40.23.0

Enhancements:
-------------
 1. Request:    Support various other flow profiles through tc.

Version 8.40.6.0 (Aug 03, 2018)
===============================
Internal FW 8.40.22.0

Enhancements:
-------------
 1. Request:    Use new chain APIs qed_chain_alloc()/qed_chain_params_init().

Version 8.40.5.0 (Jul 27, 2018)
===============================
Internal FW 8.40.22.0

Fixes:
------
 1. Problem:    Recovery process while VFs are active leads to a deadlock.

    Change:     Disable SRIOV before acquiring the RTNL lock and starting with
                the recovery process.

    Introduced: Day1.

    Relevance:  All.

Version 8.40.4.0 (July 13, 2018)
================================
Internal FW 8.40.21.0

Fixes:
------
 1. Problem:    CQ102179: Changing number of queue while traffic running
                given dump traces.

    Change:     When interface load fails do not configure filters
                to prevent FW assertion.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ101273: Toggling GRO (on->off->on) doesn't enable GRO.

    Change:     In GRO change flow, Need reload must be set "false" based
                on moduel param "gro_disable" value.

    Introduced: Day 1.

    Relevance:  All.

 3. Problem:    CQ102157: LACP TX pkts from VF bond are getting
                dropped with tx_error_drop.

    Change:     Trusted VFs should be allowed to send control LACP packets.

    Introduced: 8.14.0.0.

    Relevance:  SR-IOV.

Version 8.40.3.0 (Jun 08, 2018)
===============================
Internal FW 8.40.18.0

Fixes:
------
 1. Problem:    CQ101857: ethtool statistics are corrupted when interface is
                down.

    Change:     Fixed base_num_queues manipulation in driver to fix ethtool
                statistic flow when interface is down.

    Introduced: 8.33.2.0.

    Relevance:  ethtool -S.

Version 8.40.2.0 (May 30, 2018)
===============================
Internal FW 8.40.18.0

Enhancements:
-------------
 1. Request:    Add retpoline spectre meltdown support.

Version 8.40.1.0 (May 07, 2018)
===============================
Internal FW 8.40.18.0

Fixes:
------
 1. Problem:    CQ101311: Reload qedr driver after configuring bonding will lead
                to server crash and reboot.

    Change:     Pointer to qedr_drv needs to be reset if qedr is removed.

    Introduced: RDMA lag day 1.

    Relevance:  Rdma lag.

Enhancements:
-------------
 1. Request:    Add  FEC ethtool support.

Version 8.40.0.0 (Apr 19, 2018)
===============================
Internal FW 8.40.18.0

Fixes:
------
 1. Problem:    CQ99788 - Upstream: [qede_free_tx_pkt] messages
                when running L2 traffic.

    Change:     Fix barrier usage after tx doorbell write.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ100893 - Flow cannot hash to more than 8 queues after using
                ethtool -L to change queue number.

    Change:     Fix issue in the logic to calculate the change in rxqueue count.

    Introduced: 8.33.2.0.

    Relevance:  Ethtool -L.

 3. Problem:    CQ101002/CQ100788 - RHEL7u5RC: jumbo frame doesn't work on VF.

    Change:     Add extended ndo to VF netdev ops.

    Introduced: Day 1.

    Relevance:  RHEL 7.4/7.5.

 4. Problem:    CQ100917: Transceiver DMI data is incorrect using ethtool.

    Change:     Read optical transceiver data from memory region 0xA2.

    Introduced: Day 1.

    Relevance:  ethtool -m.

 5. Problem:    Rdma Lag creation can cause stopped traffic or null ptr deref.

    Change:     Update rdma lag info only in case of success.

    Introduced: Rdma lag day 1.

    Relevance:  Rdma lag.

Enhancements:
-------------
 1. Request:    GRE steering support via GFT through ethtool.

 2. Request:    Retain user/ethtool flow filters across PF unload/load flows.

 3. Request:    RDMA bonding support enable by default.

 4. Request:    Add initial support for E5.

Version 8.33.14.0 (Mar 25, 2018)
================================
Internal FW 8.33.13.0

Enhancements:
-------------
 1. Request:    Add flash confgiuration support via 'ethtool -f'.

Version 8.33.13.0 (Mar 13, 2018)
================================
Internal FW 8.33.13.0

Version 8.33.12.0 (Mar 05, 2018)
================================
Internal FW 8.33.12.0

Fixes:
------
 1. Problem:    qedr not informed of link update.

    Change:     Notify qedr of link updates.

    Introduced: Day 1.

    Relevance:  rdma.

Version 8.33.11.0 (Feb 14, 2018)
================================
Internal FW 8.33.11.0

Enhancements:
-------------
 1. Request:    Fix sparse warnings about making symbols static.

 2. Request:    Use GET_MFW_FIELD where needed.

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

Enhancements:
-------------
 1. Request:    RHEL7.5 beta kernel support.

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

Fixes:
------
 1. Problem:    Fix regression caused due to RHEL7.5 support.

    Change:     Move all netdev extended ndos at one place.

    Introduced: 8.33.8.0.

    Relevance:  RHEL7.x.

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

Enhancements:
-------------
 1. Request:    Ethtool ntuple support to steer standard vxlan tunnels.

 2. Request:    Ethtool ntuple drop action support based on src ip.

 3. Request:    RHEL7.5 support.

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

Enhancements:
-------------
 1. Request:    Add max tx rate configuration support for PFs [packet pacing].

 2. Request:    Add drop action configuration support via ethtool/tc.

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

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

Version 8.33.4.0 (Dec 07, 2017)
===============================
Internal FW 8.33.6.0

Fixes:
------
 1. Problem:    On qedr modprobe device count includes all devices, even failed
                ones.

    Change:     Print the actual number of added devices.

    Introduced: Day 1.

    Relevance:  RDMA.

Enhancements:
-------------
 1. Request:    Add support for 20G link speed.

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

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

Fixes:
------
 1. Problem:    CQ96651 - Tx timeout with traffic on rhel7.3.

    Change:     Optimize IOMMU fault addr fix.

    Introduced: 8.30.7.0.

    Relevance:  Fastpath (build_skb).

Enhancements:
-------------
 1. Request:    Add support for macvlan offload.

 2. Request:    Add destip based flow redirection to macvlan devices.

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

Fixes:
------
 1. Problem:    Unable to add first destip based filter via tc.

    Change:     Fix filter validation logic.

    Introduced: 8.33.0.0.

    Relevance:  tc.

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

Fixes:
------
 1. Problem:    CQ95084 - 3PAR:Falcon - 25000baseSR isn't listed as a
                supported mode.

    Change:     Display supported link on basis of speed, meadia type and
                transciever type, from MFW.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Destination IP based filtering for the VFs through tc.

 2. Request:    Add ethtool callbacks for reading sfp eeprom data.

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

Fixes:
------
 1. Problem:    CQ96305 - AH: SRIOV VF PVID setting on HYP with RHEL7.4 distro
                gives Operation not supported error.

    Change:     Add support to set PVID for VFs through PF using ip tool.

    Introduced: Day 1.

    Relevance:  RHEL 7.4.

 2. Problem:    CQ96626/CQ96227 - Add SKB linearization back.

    Change:     Linearize SKB on too fragmented packets.

    Introduced: 8.30.8.0.

    Relevance:  All.

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

Enhancements:
-------------
 1. Request:    Add 'link_change_count' to the port statistics.

Version 8.30.11.0 (Aug 31, 2017)
================================
Internal FW 8.30.15.0

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

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

Fixes:
------
 1. Problem:    QL45212 - not seeing LACP on newer kernels.

    Change:     Add support for ethtool get/set_settings for newer kernels.

    Introduced: 8.14.1.0.

    Relevance:  LACP on newer Ubuntu kernels.

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

Fixes:
------
 1. Problem:    CQ95429 - 'SKB linearization failed' observed in logs.

    Change:     There's no longer any need to linearize too-fragmented SKBs.

    Introduced: 8.5.4.0.

    Relevance:  All.

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

Fixes:
------
 1. Problem:    Fix "DMAR: [DMA Write] Request device [04:00.0] fault addr".

    Change:     Fix unmapping logic of TPA start buffer.

    Introduced: 8.30.3.0.

    Relevance:  Fastpath (build_skb).

Enhancements:
-------------
 1. Request:    Add to ethtool-i support for MBI version.

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

Fixes:
------
 1. Problem:    Configuration of flow classification including vlan is accepted
                but vlan doesn't take effect in classification.

    Change:     Fail configuration flows where user sets fields which aren't
                used to configure FW/HW.

    Introduced: Day 1.

    Relevance:  Ethtool -N.

Enhancements:
-------------
 1. Request:    FW GRO aggregaations to use network-stack gro-complete flow.

 2. Request:    Support flow classification for TCP based on destination port
                [ethtool -N <pf> flow-type tcp(4|6) dst-port <port>].

 3. Request:    Add ethtool support to get and set Rx/Tx per queue coalescing.

Version 8.30.5.0 (June 22, 2017)
================================
Internal FW 8.30.8.0

Enhancements:
-------------
 1. Request:    Support flow classification based on UDP port.

 2. Request:    Support flow classification configuration for VF via PF
                [ethtool -N <PF> ... action [vfid + 1] << 32 | user-def vfid].

 3. Request:    Multi COS support for PF.

Version 8.30.4.0 (June 08, 2017)
================================
Internal FW 8.30.7.0

Fixes:
------
 1. Problem:    aRFS doesn't work as expected in NPAR mode due to lack
                of LLH mac configuration.

    Change:     Disable aRFS for NPAR mode.

    Introduced: Day 1.

    Relevance:  aRFS.

 2. Problem:    Fix rx data placement offset bytes accounting.

    Change:     Use hardware defined placement offset, since NET_IP_ALIGN
                value is architecture dependent.

    Introduced: Day 1.

    Relevance:  Fastpath.

Enhancements:
-------------
 1. Request:    Support rx data placement configuration.

 2. Request:    Call the qed recovery_prolog() op as the first step of the
                recovery handling.

Version 8.30.3.0 (May 24, 2017)
===============================
Internal FW 8.30.5.0

Fixes:
------
 1. Problem:    Enabling VFs on 4.11 kernel fills logs with traces.

    Change:     Split PF/VF NDOs so that VFs would not expose ndo_xdp().

    Introduced: 8.30.2.0.

    Relevance:  SRIOV, 4.11.

 2. Problem:    Fix packet header length calculation.

    Change:     Pull appropriate header length based on packet length.

    Introduced: Day 1.

    Relevance:  Old distros.

 3. Problem:    CQ93911 - NPAR: unable to run tcpdump on higher npar functions.

    Change:     Return software timestamp capabilities when PTP clock
                functionality is not available for the PF.

    Introduced: 8.30.0.0.

    Relevance:  MF mode.

 4. Problem:    Removal of qede following a recovery caused the server to crash.
                This occurred only if during the recovery qedr was loaded.

    Change:     Avoid adding events to qedr after recovery and remove the event
                work queue only once, on recovery.

    Introduced: 8.30.2.0.

    Relevance:  RoCE.

Enhancements:
-------------
 1. Request:    Add compilation support for RHEL7.4.

 2. Request:    Removed 2 deprecated SmartAN(TM) private flags and replaced
                with one stating whether device supports smartAN.

 3. Request:    Use build_skb() in fastpath flow.

 4. Request:    Support XDP for VFs [requires new PF driver & VF doorbell bar].

Version 8.30.2.0 (May 04, 2017)
===============================
Internal FW 8.30.4.0

Fixes:
------
 1. Problem:    PTP Tx time-stamping data structures are not protected against
                the concurrent access.

    Change:     Protect the PTP Tx structures using atomic bit flag/ops.

    Introduced: Day 1.

    Relevance:  PTP.

 2. Problem:    Allocate enough data for arfs_fltr_bmap.

    Change:     Fix calculation to allocate exact number of bytes.

    Introduced: Day 1.

    Relevance:  aRFS.

 3. Problem:    CQ92934 - 'ethtool --show-eee' displays EEE status as not
                supported after setting EEE off.

    Change:     Use eee supported capabilities value read from shared memory.

    Introduced: Day 1.

    Relevance:  EEE.

Enhancements:
-------------
 1. Request:    Support XDP programs that modify headers of ingress traffic.

Version 8.30.1.0 (Apr 06, 2017)
===============================
Internal FW 8.30.1.0

Fixes:
------
 1. Problem:    Memory leak in the driver unload flow.

    Change:     Free memory related to tx_xdp and sb_info in the unload flow.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    1Gbps speed config from ethtool fails.

    Change:     Add missing support to configure 1G speed via ethtool.

    Introduced: Day 1.

    Relevance:  ethtool -s.

 3. Problem:    Fix ramrod failures in aRFS flow.

    Change:     Use appropriate TCP header pointer in SKB.

    Introduced: Day 1.

    Relevance:  aRFS.

 4. Problem:    CQ92838 - "No such file or directory" error during the install.

    Change:     Fix copying incorrect file in Makefile.

    Introduced: 8.30.0.0.

    Relevance:  All.

 5. Problem:    CQ92443 - Traffic isn't flowing when secondary down in bond
                mode 5.

    Change:     Don't trust the netdevice's MAC to change only via ndo.

    Introduced: Day 1.

    Relevance:  Bonding balance-tlb [mode 5].

 6. Problem:    CQ92521 - VF-PF Drv Compatibility BB : VM with old-qed drv on vf
                crashes on continues mtu toggle with VM-external traffic.

    Change:     Do not send link status update to the stack when driver doesn't
                request for the link.

    Introduced: 8.30.0.0.

    Relevance:  All.

 7. Problem:    Ethtool allows the enable of autoneg even though the support is
                disabled in the nvm.

    Change:     Fail the autoneg enable when autoneg-supported field is not set.

    Introduced: Day 1.

    Relevance:  ethtool -s <speed>.

 8. Problem:    CQ93107 - After disabling WoL via ethtool, WoL still works.

    Change:     If device supports WoL, present WoL as enabled.

    Introduced: Day 1.

    Relevance:  WoL.

Enhancements:
-------------
 1. Request:    Add RX classification support [aRFS] via ethtool.

 2. Request:    Support Doorbell overflow recovery.

 3. Request:    Partially remove need to dealloc/realloc memory during fastpath
                channels/rings configuration.

 4. Request:    Expose modules parameters with read permissions under
                /sys/module/qede/parameters/.

Version 8.30.0.0 (Mar 09, 2017)
===============================
Internal FW 8.30.0.0

Fixes:
------
 1. Problem:    CQ90608 - Physical carrier is down in network stack view.

    Change:     Prevent race between explicit request of link and attention.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    During driver unload, PTP thread may reference freed ptp data.

    Change:     PTP Tx-thread should be canceled prior to the clean up of ptp
                data structures.

    Introduced: 8.5.3.0.

    Relevance:  PTP.

 3. Problem:    CQ90809/CQ90793 - qed/qede driver fails to load after reboot in
                SLES11sp4 OS and SLES12sp1 OS.

    Change:     Added support to update initrd while installing qed/qede/qedr
                modules.

    Introduced: Day 1.

    Relevance:  All.

 4. Problem:    Driver always allocates memory for maximum Tx rings irrespective
                of the configured Tx ring size.

    Change:     Allocate Tx buffers for configured number of rings, and set the
                range for sw_prod/cons indices values to [0, tx_ring_size-1].

    Introduced: Day 1.

    Relevance:  All.

 5. Problem:    CQ90093 - Changing MAC puts port link down.

    Change:     When OS doesn't support the higher speeds, besides advertising
                the recognized speeds in the input request, advertise the speeds
                device supports which the current OS doesn’t.

    Introduced: Day 1.

    Relevance:  Old distros.

 6. Problem:    Calltrace while updating the channel configuration.

    Change:     While updating txq_size, there could be a small window where the
                skbs queued at OS might already got queue_id mapping assigned
                based on older txq_size. Need to make sure that those queue_ids
                should fall in the new range.

    Introduced: Day 1.

    Relevance:  Pre 3.9 kernels.

 7. Problem:    After setting system-time to PHC clock, the PHC clock value is
                reduced by 100 times.

    Change:     Driver timespec64_to_ns() implementation need to use multiplier
                'NSEC_PER_SEC' for converting value in seconds to nano seconds.

    Introduced: Day 1.

    Relevance:  PTP on RHEL7.0/7.1 where timespec64_to_ns() is not defined.

 8. Problem:    CQ91256 - Ubuntu 14.04 PXE installation fails- netcfg segfault.

    Change:     Fail all non-timesync related ioctls.

    Introduced: 8.7.0.0.

    Relevance:  All.

 9. Problem:    CQ92010 - Link down message is not logged in dmesg with
                "ifconfig ethX down" command.

    Change:     Add log message in the driver unload path.

    Introduced: Day 1.

    Relevance:  Link flap.

10. Problem:    PTP filters are being configured incorrectly for some ptp modes.

    Change:     Use the new PTP API for configuring the rx/tx filters.

    Introduced: Day 1.

    Relevance:  PTP.

Enhancements:
-------------
 1. Request:    Acquire PTP resource lock before initializing the PTP on a given
                PF.

 2. Request:    Add support in default SmartAN(TM) configuration.

 3. Request:    Add ethtool support for Energy efficient ethernet feature.

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

Fixes:
------
 1. Problem:    CQ91136 - Fix panic on configuring tunnel in non IOV case.

    Change:     Update bulletin by only IOV PFs on tunnel configuration.

    Introduced: 8.18.7.0.

    Relevance:  tunneling.

 2. Problem:    CQ90157 - PTP sync fails after restarting ptp4l application.

    Change:     PTP packets will be forwarded to the host by default, driver
                doesn't need to request for the same.

    Introduced: Day 1.

    Relevance:  PTP.

 3. Problem:    CQ90109 - AH: Ethtool stats jumbo size packets counters not
                incrementing.

    Change:     Distinguish between the BB/AH MAC counters where there is a
                distinction.

    Introduced: Day 1.

    Relevance:  'Ethtool -S'.

Enhancements:
-------------
 1. Request:    Implement a page-pool for Rx pages.

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

Version 8.18.7.0 (Dec 29, 2016)
===============================
Internal FW 8.18.9.0

Fixes:
------
 1. Problem:    CQ90578 - Changing number Of combined queues to 97+ fails.

    Change:     Require more CIDs during initializations [was capped at 64].

    Introduced: Day 1.

    Relevance:  'Ethtool -L'.

Enhancements:
-------------
 1. Request:    VF tunneling support.

 2. Request:    VF ethtool coalescing support.

 3. Request:    Allow attaching an eBPF XDP program while interface is down.

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

Version 8.18.5.0 (Dec 05, 2016)
===============================
Internal FW 8.18.6.0

Fixes:
------
 1. Problem:    CQ90249 - Initrd process is not implemented in Fastlinq Tar
                package, failed to load OOB driver after reboot.

    Change:     Add support for initrd update as required by some distros.

    Introduced: Day 1.

    Relevance:  Ubuntu.

Enhancements:
-------------
 1. Request:    Allocate replacement buffers at end of NAPI run. Improves
                throughput on CPU-bounded machines processing ingress traffic.

 2. Request:    Split driver logic into several files - introduce qede_fp.c for
                datapath related logic and qede_filter.c for classification.

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

Fixes:
------
 1. Problem:    CQ86906 - E4 2x25G: call trace observed on ptp4l secondary.

    Change:     Protect ptp code paths using bottom half variant of spin-lock.

    Introduced: Day 1.

    Relevance:  PTP.

Enhancements:
-------------
 1. Request:    Add qede support for populating the values for ethernet TLVs.

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

Fixes:
------
 1. Problem:    System crashes when setting Tx-only / Rx-only queues.

    Change:     Fix logger not to pick tx/rx fields which are non-existent.

    Introduced: 8.18.1.0.

    Relevance:  All.

 2. Problem:    Can't set MTU size to Jumbo.

    Change:     Set lower/upper MTU bounds on the netdevice.

    Introduced: Day 1.

    Relevance:  4.9 kernel.

Enhancements:
-------------
 1. Request:    Initial XDP support. Support XDP_{PASS, ABORTED, DROP}.

 2. Request:    Add compile-based fastpath debug ability which tracks time
                spent in NAPI. Can be accessed via a dedicated debugfs node
                'napi_time'.

 3. Request:    Add XDP support for XDP_TX [forwarding rules].

Version 8.18.2.0 (Nov 13, 2016)
===============================
Internal FW 8.18.3.0

Fixes:
------
 1. Problem:    Possible BUG() when failing late-stage probe.

    Change:     Fix probe error flow to unregister netdev before releasing it.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add support for distinct filters for aRFS using ethype and
                ip protocols.

 2. Request:    Add a printout of the FW, MFW and MBI versions.

Version 8.18.1.0 (Oct 30, 2016)
===============================
Internal FW 8.18.1.0

Fixes:
------
 1. Problem:    CQ89480: Board port lights don't blink continuously when
                prompted by Linux ethtool -p command.

    Change:     Fix a typo in the Makefile.

    Introduced: 8.10.2.0.

    Relevance:  ethtool -p.

 2. Problem:    Pktgen can't configure interface for burst/clone-skb.

    Change:     Correct setting of priv-flags [overrode TX_SKB_SHARING].

    Introduced: 8.14.4.0.

    Relevance:  Pktgen.

Enhancements:
-------------
 1. Request:    Add aRFS support for IPV6 and UDP.

 2. Request:    Spill information on rings/interrupts in cases of Tx timeout.

 3. Request:    Add support for setting VF trust via
                `ip link <interface> vf <num> trust {on, off}'.

 4. Request:    Improve internal locking for reload flows and state changes.

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

Fixes:
------
 1. Problem:    Failed to configure rx/tx-only queues on newer kernels.

    Change:     get_channels() should populate values for 'max tx/rx channels'.

    Introduced: Day 1.

    Relevance:  ethtool -l.

 2. Problem:    CQ88823 - Value of number of queue is showing 2 with default
                resource allocation value i.e. 0.

    Change:     Change queue/sb id values from 8 bit fields to 16 bit fields.

    Introduced: Day 1.

    Relevance:  All.

 3. Problem:    CQ89180: Firmware assertion while running traffic with
                multiple dynamic configs.

    Change:     Check device state in critical section of rx_mode configuration.

    Introduced: Day 1.

    Relevance:  All.

 4. Problem:    Driver frees DMA memory which is mapped using dma_map_single()
                with wrong function dma_unmap_page().

    Change:     Use appropriate APIs [dma_unmap_single()] to free DMA memory.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Use the default mtu value provided by the qed driver.

 2. Request:    Update driver state to qed as part of device open/close.

 3. Request:    Update qed when there is a change in MAC/MTU.

 4. Request:    Add GSO support for tunnels where outer csum is required.

 5. Request:    Removed arbitrary PCI ids for arrow head.

 6. Request:    Support WoL configuration via `ethtool -s <dev> wol {g, d}'.

Version 8.14.4.0 (Sep 18, 2016)
===============================
Internal FW 8.14.7.0

Fixes:
------
 1. Problem:    Server crashes with the configuration of Tx-only queues.

    Change:     Reverse-mapping is not applicable to Tx-only fastpath queues,
                do not configure the same.

    Introduced: 8.14.2.0.

    Relevance:  RSS configuration using ethtool -L.

 2. Problem:    Adding macvlan interface passes base interface to promisc.

    Change:     Allow support of unicast MAC filtering [other than primary].

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    CQ86754 - Add support for VF mac hints from PF.

 2. Request:    Send driver state to MFW as part of device open/close.

 3. Request:    Implement ndo_features_check().

Version 8.14.3.0 (Sep 07, 2016)
===============================
Internal FW 8.14.6.0

Fixes:
------
 1. Problem:    Driver overwrites hardware default UDP port configuration.

    Change:     Remove default vxlan/geneve UDP port configuration.

    Introduced: 8.5.9.0.

    Relevance:  Tunnelling (VXLAN/GENEVE).

 2. Problem:    CQ87322 - ethtool self test fails on 2nd port of 40G adapter.

    Change:     Loopback implementation may receive the packets not generated
                by this module, need to ignore those packets.

    Introduced: Day 1.

    Relevance:  selftests.

 3. Problem:    RSS configuration should not be allowed in 100G mode.

    Change:     Fail the ethtool request for RSS config update.

    Introduced: Day 1.

    Relevance:  ethtool rss configuration.

 4. Problem:    Compilation warning for 32bit architectures.

    Change:     Use 'void *' typecasting to avoid assumptions on the size of
                the pointer type.

    Introduced: 8.10.3.0.

    Relevance:  ethtool -S.

Enhancements:
-------------
 1. Request:    Remove netdev's ndo_fetures_check() handling.

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

Fixes:
------
 1. Problem:    RSS indirection table doesn't get updated when rss-count is
                incremented.

    Change:     Reset the indirection table when user configures Rx queues.

    Introduced: 8.7.5.0.

    Relevance:  RSS configuration.

 2. Problem:    Driver reload during heavy traffic leads to server crash.

    Change:     Validate the TSS count before using it for modulo division.

    Introduced: 8.14.0.0.

    Relevance:  All.

 3. Problem:    Out of bounds memory access while handling a SW Tx ring.

    Change:     Fix the allocated size of a SW Tx ring.

    Introduced: Day 1.

    Relevance:  All.

 4. Problem:    CQ88677 - Rhel6.8 VM OS is not coming up after installing
                drivers.

    Change:     DCBX config is not supported on VFs, do not populate the dcbnl
                callbacks for VF interfaces.

    Introduced: 8.10.0.0.

    Relevance:  DCBX.

Enhancements:
-------------
 1. Request:    Add aRFS support (IPv4/TCP).

 2. Request:    Change default rx-rings to 1K which reduces the memory usage by
                1/8th.

Version 8.14.1.0 (Aug 14, 2016)
===============================
Internal FW 8.14.3.0

Fixes:
------
 1. Problem:    Fix build issues for RHEL7.3.

    Change:     Remove support for higher speeds for distros where the kernel
                support is missing.

    Introduced: 8.14.0.0.

    Relevance:  Ethtool speed commands.

 2. Problem:    Driver load fails on RHEL7.3.

    Change:     Use redhat specific netdev-notifier calls for RHEL7.3 driver.

    Introduced: Day 1.

    Relevance:  RHEL 7.3.

 3. Problem:    CQ88306, CQ87466 - Tx timeouts randomly appear when changing
                configurations during traffic.

    Change:     Post doorbell when stack closes queue for transmission.

    Introduced: 8.10.6.0.

    Relevance:  3.17+ kernels [+ those that back-ported xmit_more].

Version 8.14.0.0 (Jul 31, 2016)
===============================
Internal FW 8.14.1.0

Fixes:
------
 1. Problem:    CQ87487 - Failed to remove vlan error when a non-configured
                VLAN removal request is sent to the PF.

    Change:     Do not request PF to remove a non-configured VLAN.

    Introduced: Day 1.

    Relevance:  SRIOV.

 2. Problem:    CQ86953 - NPAR: System crash on changing RSS value in the iperf
                client.

    Change:     Driver is receiving few packets with old Txq ids after the
                reload. Adding select_queue-ndo for generating txq-ids in the
                configured TSS range.

    Introduced: Day 1.

    Relevance:  RSS configuration.

 3. Problem:    CQ78224/CQ82403 - ethtool display doesn't capture higher speeds
                such as 25G/50G/100G.

    Change:     Add the support for get/set_link_ksettings callbacks.

    Introduced: Day 1.

    Relevance:  All.

 4. Problem:    CQ88439 - Deadlock when qedr is modprobed.

    Change:     When qedr is modprobed and at the same time if dev->open(which
                internally calls qede_roce_dev_event_open) is called system goes
                in deadlock because of contention of rtnl_lock between
                ib_register_device and dev->open. Schedule
                qede_roce_dev_event_open in roce workqueue context.

    Introduced: Day 1.

    Relevance:  RoCE.

Enhancements:
-------------
 1. Request:    Avoid triggering a recovery in case of a Tx timeout.

 2. Request:    Add newer APIs support to configure udp tunnel.

 3. Request:    Allow VF support over 8.7, 8.8 PFs.

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

Enhancements:
-------------
 1. Request:    Notify kernel when adding a new dcbx ieee app.

 2. Request:    Add rx copy break configuration support.

 3. Request:    Split the HW error handling into non-sleep/sleep requiring
                phases.

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

Fixes:
------
 1. Problem:    Fix CPU stuck on heavy TX load.

    Change:     Allow qede_poll to do single round of TX completion.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add provision for Tx/Rx fastpath separation. Ethtool now
                supports the configuration of channels with only receive or
                transmit queues i.e. ethtool -L dev [rx N] [tx N].

 2. Request:    Add support for tunnel HW GRO.

 3. Request:    Add support for xmit_more feature.

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

Fixes:
------
 1. Problem:    CQ86772 - packets drop seen in logs with vxlan traffic when
                base interface MTU is lesser then VXLAN interface MTU.

    Change:     Handle IP frags in fastpath.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add 2 new stats - `ttl0_discard', `packet_too_big_discard'.

 2. Request:    Add support for PCI devices 1077:{8071, 8072, 8073, 8090}.

Version 8.10.4.0 (May 26, 2016)
===============================
Internal FW 8.10.5.0

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

Fixes:
------
 1. Problem:    CQ86329 - qede driver doesn't show per queue in "ethtool -S".

    Change:     Enable the code for fetching/displaying the per queue stats.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    Ethtool commands on VF causes the server crash.

    Change:     Some of the ethtool commands are not supported on VFs, remove
                the associated callbacks for VFs.

    Introduced: Day 1.

    Relevance:  All.

 3. Problem:    Need to port the loopback changes from upstream.

    Change:     Backport the loopback changes from upstream.

    Introduced: Day 1.

    Relevance:  All.

 4. Problem:    `ethtool -i' on VF claims support for self-test.

    Change:     Diffrentiate between PF and VF in feature support.

    Introduced: Day 1.

    Relevance:  VF.

Enhancements:
-------------
 1. Request:    Add suppport for dcbnl getapp/setapp features.

 2. Request:    Open debugfs node and add chain print support to debugfs.

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

Fixes:
------
 1. Problem:    CQ85924 - E4-4x25G:Driver Installation Failed.

    Change:     Add qede support for SLES 11.3.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ85863 - Unable to create VF's on Sles11 SP4 OS.

    Change:     Expose relevant APIs.

    Introduced: Day 1.

    Relevance:  SRIOV - Sles11Sp4.

 3. Problem:    Driver limits the max coalescing value to be 255.

    Change:     The fix is that we’ve used to configure half the requested
                coalescing value.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add suppport for dcbnl setter APIs.

 2. Request:    Add support dcbnl callbacks such as ieee, dcbx mode, app etc.

 3. Request:    Fix dcbnl related build issues on UBUNTU 11.4.

 4. Request:    Add support for RH6.8.

 5. Request:    Add GENEVE udp ports registration APIs support.

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

Enhancements:
-------------
 1. Request:    Add suppport for dcbnl getter APIs.

 2. Request:    Add timesync feature support.

 3. Request:    Remove the cee-dcbnl support for pre-3.0, pre-rhel6.2 kernels.

 4. Request:    Remove ftrace support from driver.

Enhancements:
-------------
 1. Request:    Moved RoCE related module parameters from qede to qed:
                num_roce_qps, min_roce_dpis, roce_edpm.

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

Fixes:
------
 1. Problem:    CQ77033 - E4: Diagnostic tests not support with linux qede
                driver from ethtool interface.

    Change:     Add qede support for internal loopback test.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    The current fan failure handling affects other E4 adapters on
                the same server.

    Change:     Revise the handling approach to be a per-PF handling.

    Introduced: 8.7.8.0.

    Relevance:  All.

 3. Problem:    The ndo_tx_timeout is not implemented.

    Change:     Add implementation of the ndo based on the recovery process.

    Introduced: Day 1.

    Relevance:  All.

 4. Problem:    CQ84393 - System crash on driver load on 32 bit platform.

    Change:     Handle memory allocation failure properly at init time.

    Introduced: Day 1.

    Relevance:  All.

 5. Problem:    CQ84792 - Packets with invalid IP chksum are wrongly sent to
                the stack.

    Change:     Fix checksum verification bits.

    Introduced: Day 1.

    Relevance:  All.

 6. Problem:    CQ82848 - TCP traffic runs intermittenly with Pf attached as
                passthrough to VM [Using macvtap passthrough - e1000].

    Change:     Fix gro handling in driver.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add a private [ethtool] flag to indicate device supports 25g.

 2. Request:    Add qede support for configuring Tx coalesce value.

 3. Request:    Add qede ethtool support for memory test.

 4. Request:    Add a printout of idle check in case of a HW error.

 5. Request:    ECORE RoCE API updated to use num_qps and num_mrs instead of nu-
                m_cons and num_tasks. Moved out all non-input fields from ecore-
                _roce_pf_params.

 6. Request:    Add dcbnl support for getter APIs.

 7. Request:    Add a printout of fw asserts in case of a HW error.

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

Fixes:
------
 1. Problem:    CQ84158 - Can't force speed to 10g in NPAR.

    Change:     Allow port-configuration changes when working in NPAR.

    Introduced: Day 1.

    Relevance:  NPAR.

 2. Problem:    CQ82195 - Add Fan Failure support.

    Change:     Add handling of a fan failure event.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add initial changes for selftest support.

 2. Request:    Add a module parameter roce_edpm that allows enabling, disabling
                or forcing EDPM.

Version 8.7.7.0 (Jan 07, 2016)
==============================
Internal FW 8.7.5.0

Fixes:
------
 1. Problem:    Tx packets might be passed to the driver for transmission in the
                middle of a recovery handling.

    Change:     Change the driver state while recovering to avoid the possible
                competing contexts from waking the Tx queues.

    Introduced: Day 1.

    Relevance:  Error recovery.

 2. Problem:    CQ82363 - Qede VF driver PF driver Probing & some vport,queue
                code print messages gets on the console.

    Change:     Move the current log messages in qede load path to lower
                log-level. qede displays the following logs in default level.
                QLogic FastLinQ 4xxxx Ethernet Driver qede 8.7.6.0
                qede 04:00.00: registered eth0.

    Introduced: Day 1.

    Relevance:  Driver load/unload.

Enhancements:
-------------
 1. Request:    Handle various error flows in fastpath.

 2. Request:    Empty the Tx queues as part of the unload phase of the recovery
                handling.

 3. Request:    Add to ethtool-d support for phy.

 4. Request:    Add qede support for RHEL 6.2.

 5. Request:    Add module parameters min_roce_qps and min_roce_dpis.

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

Fixes:
------
 1. Problem:    CQ84042 - Machine crashes on load/unload test with VFs.

    Change:     Don't free netdevice until after slowpath is stopped, as
                the iov workqueue is still running and might access it.

    Introduced: Day 1.

    Relevance:  SRIOV.

Enhancements:
-------------
 1. Request:    Optimize memory utilization in fast path.

 2. Request:    Increase the requested number of L2 connections.

 3. Request:    Fastpath optimization w.r.t prints and unlikely conditions.

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

Enhancements:
-------------
 1. Request:    Add qede support for get/set indirection table, hash key
                and rss capabilities.

 2. Request:    Update the variable names and the ethtool dispaly for Rx stats.

 3. Request:    Add to ethtool-d support for igu fifo.

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

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

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

Version 8.7.1.0 (Nov 09, 2015)
==============================
Internal FW 8.7.0.0

Version 8.7.0.0 (Nov 05, 2015)
==============================
Internal FW 8.7.0.0

Fixes:
------
 1. Problem:    CQ81585 - Vxlan traffic does not flow, if the base interface
                is configured only with ipv6 addr.

    Change:     Prevent FW from touching inner headers when not required.

    Introduced: Day 1.

    Relevance:  VXLAN.

Version 8.6.1.0 (Oct 29, 2015)
==============================
Internal FW 8.6.1.0

Fixes:
------
 1. Problem:    CQ82856: E4 drivers are not getting installed through
                source tarball installtion when there are other instance of
                driver present on RHEL distro.

    Change:     On RHEL distro check for "extra" instead of extra/qlgc-fastlinq
                before placing module in appropriate location.

    Introduced: 8.5.3.0.

    Relevance:  RHEL.

 2. Problem:    CQ81507: L2 bonding with RoCE:RDMA_CM applications are not
                working over bonding interface.

    Change:     Add a callback for MAC address change (for full change see qedr
                too).

    Introduced: Day 1.

    Relevance:  RoCE.

Enhancements:
-------------
 1. Request:    Add support for SRIOV vf min rate configuration.

Version 8.6.0.0 (Oct 14, 2015)
==============================
Internal FW 8.6.0.0

Version 8.5.9.0 (Oct 08, 2015)
==============================
Internal FW 8.5.6.0

Fixes:
------
 1. Problem:    CQ81994 - Qede driver statistics resets during MTU change.

    Change:     Revise the fix introduced in the previous revision.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ81730 - Iperf traffic not running on vxlan over openvswitch.

    Change:     Configure linux default vxlan UDP port by default in driver.

    Introduced: Day 1.

    Relevance:  VXLAN.

 3. Problem:    Out-of-bound access into fastpath memory during Rx handling.

    Change:     Increment the Rx ring sizes by 1.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Added support for device IDs: 0x1666.

Version 8.5.8.0 (Sep 21, 2015)
==============================
Internal FW 8.5.6.0

Fixes:
------
 1. Problem:    CQ77036 - Port identification does not work in linux driver.

    Change:     Add qede ethtool support for port identification.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ81994 - Qede driver statistics resets during MTU change.

    Change:     Do not reset the statistics in the driver reload path.

    Introduced: Day 1.

    Relevance:  All.

 3. Problem:    GRO replacement buffers map an additional page of unallocated
                memory.

    Change:     Fix replacement buffer mapping sizes.

    Introduced: 8.5.7.0.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add geneve tunnel offload support.

 2. Request:    Add to ethtool-d support for reg fifo and protection override.

 3. Request:    Change driver string into 'FastLinQ 4xxxx'.

Version 8.5.7.0 (Sep 02, 2015)
==============================
Internal FW 8.5.5.0

Enhancements:
-------------
 1. Request:    Fix the endian-ness coding issues in the qede driver.

 2. Request:    Major changes in L2 Rx HSI - support TPA over BDs, remove
                SGE rings.

 3. Request:    Use qed_start_vport structure as an argument to
                qed_vport_start function as part of the enhacement of
                the function prototype.

Version 8.5.6.0 (Aug 26, 2015)
==============================
Internal FW 8.5.4.0

Fixes:
------
 1. Problem:    CQ81378 - E4 drivers are placed in wrong location,
                loading from broadcom folder instead of qlogic folder.

    Change:     Place the driver module under qlogic folder.

    Introduced: 8.4.0.0.

    Relevance:  Module installation.

 2. Problem:    CQ81501 - Link modes showing wrong information.

    Change:     Use the AND (&) operator to clear the required bits from the
                capability value.

    Introduced: 8.5.4.0.

    Relevance:  ethtool settings display.

 3. Problem:    CQ81632 - VM crashes on issuing ethool selftest on vf.

    Change:     Remove selftest support from the qede driver.

    Introduced: 8.3.0.0.

    Relevance:  ethtool selftest command.

Enhancements:
-------------
 1. Request:    Utilize QED's iov interface [was previously part of L2].

 2. Request:    Remove SF mode support from qede driver and, add the support for
                Default-MF mode.

Version 8.5.5.0 (Aug 13, 2015)
==============================
Internal FW 8.5.3.0

Version 8.5.4.0 (Aug 10, 2015)
==============================
Internal FW 8.5.3.0

Fixes:
------
 1. Problem:    CQ80695 - FW assertion while running software iSCSI traffic.

    Change:     Added support to linearize skb with too many fragments.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ80254 - VXLAN performance for 1500 MTU is not reaching line
                rate.

    Change:     Setting SKB's csum_level to indicate calculated csums.

    Introduced: Day 1.

    Relevance:  RHEL7.1.

 3. Problem:    FW assert when running TCP stream on new kernels.

    Change:     Mark Tx packets as LSO only if skb passes skb_is_gso().

    Introduced: Day 1.

    Relevance:  Net-next.

 4. Problem:    CQ80992 - Link mode shows as 56000baseKR4/Full on SLES 11SP4.

    Change:     Do not populate the speed-capablities for 25/50/100G speeds.
                These speeds are not supported yet by the ethtool.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add support for AH device ID.

 2. Request:    For non SLES distros install the module in the same location as
                rpm would do to set the correct hierarchy of installed modules
                i.e. under extra/qlgc-fastlinq.

Version 8.5.3.0 (Jul 26, 2015)
==============================
Internal FW 8.5.2.0

Fixes:
------
 1. Problem:    CQ79650 - No log message printed for link up/down event.

    Change:     Notify link up/down event to the kernel only when the carrier
                is down/up respectively.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ80996 - qede failed to get installed on SLES11SP4.

    Change:     Add Module.supported file in driver sources.

    Introduced: Day 1.

    Relevance:  SLES11SP4.

Version 8.5.2.0 (Jul 14, 2015)
==============================
Internal FW 8.5.1.0

Fixes:
------
 1. Problem:    CQ80492 - E4: Ethtool "autoneg" option can not be turned off
                once "autoneg" turned.

    Change:     Add the changes for 25G speed support.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    qedr loads quietly even if no device is set to RoCE personality.

    Change:     Print the number of RoCE functions discovered and registered.

    Introduced: day 1.

    Relevance:  All.

Version 8.5.1.0 (Jul 05, 2015)
==============================
Internal FW 8.4.2.0

Fixes:
------
 1. Problem:    CQ80509: driver module on SLES 11 SP4 does not load
                automatically after a reboot.

    Change:     lsinitrd related help message pop-up on SLES ditros when
                performing make install with FastLinQ Linux drivers package.
                So first check if initramfs file itself exists before checking
                for the kernel module in initrd image.

    Introduced: 8.4.0.0.

    Relevance:  SLES.

 2. Problem:    CQ79845 - E4: Vlan traffic does not show in Tcpdump output
                even with promiscuous mode enabled for all distros.

    Change:     Enable accept-any-vlan mode if interface is put in
                promiscuous mode.

    Introduced: Day 1.

    Relevance:  VLAN filtering.

 3. Problem:    CQ80167 - Add 10G/25G to qede driver description in log.

    Change:     Update the module description, log message for qede driver.

    Introduced: Day 1.

Enhancements:
-------------
 1. Request:    Add support for module installation on Ubuntu.

Version 8.5.0.0 (Jun 25, 2015)
==============================
Internal FW 8.4.2.0

Version 8.4.1.0 (Jun 25, 2015)
==============================
Internal FW 8.4.2.0

Fixes:
------
 1. Problem:    CQ80313 - ethtool -S <interface> while running iPerf and if
                up/down causes host to reboot.

    Change:     Protect fastpath array access using qede_lock.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add qede support for configuring the driver version.

 2. Request:    Add qede support for set/get coalesce values.

 3. Request:    Add support for error recovery from process kill events.

Version 8.4.0.0 (Jun 19, 2015)
==============================
Internal FW 8.4.1.0

Fixes:
------
 1. Problem:    CQ80027 - "Ramrod is stuck, MCP drain failed" while
                running change mtu size test.

    Change:     Initialize new MTU in netdev after stopping TX.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    cq79650 - print link change messages to system logs.

 2. Request:    Add driver support for 32 bit linux platform.

 3. Request:    Add to ethtool-d support for MCP trace.

 4. Request:    Allow VLANs to be configured while interface is down.

 5. Request:    Add a new pmm statistic.

 6. Request:    Module installation enhancements - Install under "updates" in
                case of SuSE and "extra" in case of rest of the distros. Use
                qede.conf file to override previous driver loads (inbox or thru
                source code). Update the initramfs if driver is already a part
                of it before installation.

 7. Request:    Add offload support for VXLAN and GRE tunnels.

Version 8.3.5.0 (May 20, 2015)
==============================
Internal FW 8.3.8.0

Fixes:
------
 1. Problem:    CQ78596 - Functions from same physical port attached
                to different VMs fail to ping each other.

    Change:     Enable npar tx switching by default.

    Introduced: Day 1.

    Relevance:  NPAR.

 2. Problem:    CQ78993 - qed/qede drivers do not print out version numbers in
                the logs.

    Change:     Display qede version while loading the driver.

    Introduced: Day 1.

    Relevance:  All.

 3. Problem:    CQ79664 - VM receiving packet greater than MTU size
                irrespective of GRO is ON or OFF.

    Change:     Disable the hardware gro feature when user disables the software
                GRO config.

    Introduced: Day 1.

    Relevance:  All.

Version 8.3.4.0 (May 07, 2015)
==============================
Internal FW 8.3.7.0

Enhancements:
-------------
 1. Request:    Add VFs rate (max rate) limiting support.
                'ip link set ethX vf <id> max_tx_rate <val> min_tx_rate 0'.
                'ip link set ethX vf <id> rate <val>'.

Version 8.3.3.0 (Apr 29, 2015)
==============================
Internal FW 8.3.6.0

Fixes:
------
 1. Problem:    CQ79117 - stack trace appears in system log during removal.

    Change:     call remove callback during PCI removal.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add ethtool support for nvram access.

 2. Request:    Add support for forcing a pvid on a VF via iproute2 -
                'ip link set ... vf <id> vlan <value>'.

Version 8.3.2.0 (Apr 21, 2015)
==============================
Internal FW 8.3.5.0

Enhancements:
-------------
 1. Request:    Add ethtool -d support for 100G mode.

Version 8.3.1.0 (Apr 08, 2015)
==============================
Internal FW 8.3.4.0

Fixes:
------
 1. Problem:    While vlan interface exists, MTU change causes base driver
                traffic to stop.

    Change:     Re-configure vlan filters [including 0] after inner-reload.

    Introduced: Day 1.

    Relevance:  All.

Version 8.3.0.0 (Mar 24, 2015)
==============================
Internal FW 8.3.3.0

Fixes:
------
 1. Problem:    CQ78160 - system crash while driver load unload.

    Change:     Free IRQs before disabling msix in error path
                to avoid system crash at least.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    CQ77927 - Kernel panic with error "Tx queue[10] is stuck,
                requesting MCP to drain".

    Change:     Synchronize unload flow and set_rx_mode using device state.

    Introduced: Day 1.

    Relevance:  All.

 3. Problem:    CQ78302 - RoCE: System crashed while unloading qedr driver when
                personality is in ethernet Mode.

    Change:     Fail qedr load when personality is not RoCE.

    Introduced: Day one.

    Relevance:  RoCE.

 4. Problem:    CQ78355 - VLAN filters are not getting configured.

    Change:     Added a VLAN filter offload flag in netdev->features of the
                kernel where ndo_fix_features callback is not present.

    Introduced: 8.2.1.0.

    Relevance:  RHEL6.5.

 5. Problem:    Rx traffic with small mtu values leads to system crash.

    Change:     Fix the size calculation of the allocated Rx buffers.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add VFs anti-spoofing support.

 2. Request:    Qede self test initial support.

 3. Request:    Remove 20G speed support from qede.

 4. Request:    Add ethtool support for get/set pause configuration.

 5. Request:    Major restructuring of qed sources; quite a bit of inclusion
                changes in code.

Version 8.2.4.0 (Feb 26, 2015)
==============================
Internal FW 8.2.7.0

Fixes:
------
 1. Problem:    VLAN filtering offload is not taking effect on some
                distributions like RHEL6.6 and older.

    Change:     Fixed preprocessing conditions which select VLAN filtering
                offload.

    Introduced: 8.2.1.0.

    Relevance:  RHEL6.6 and older distributions.

 2. Problem:    CQ77927 - mtu-change test fails with FW assertion.

    Change:     Verify interface up in critical section - avoids race.

    Introduced: 8.2.1.0.

    Relevance:  All.

 3. Problem:    build_skb is not used in some distors although being supported
                by their kernel.

    Change:     Change the dependency on the kernel version with an actual check
                of the api existence.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Add function that sends data to qed debugfs debug node.

 2. Request:    Added support for device IDs: 0x1644, 0x1654, 0x1656, 0x1664.

 3. Request:    Add support for guest VLAN filtering on VFs.

 4. Request:    Add support for accept any VLAN mode on PFs and VFs.

Version 8.2.3.0 (Feb 12, 2015)
==============================
Internal FW 8.2.4.0

Version 8.2.2.0 (Feb 11, 2015)
==============================
Internal FW 8.2.4.0

Version 8.2.1.0 (Feb 04, 2015)
==============================
Internal FW 8.2.2.0

Fixes:
------
 1. Problem:    The flow of the SGE memory free tries to access entries of the
                parallel driver ring even if it wasn't allocated.

    Change:     Avoid access to the ring entries in case it is NULL.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    Optional memory leak in the flow of the Rx memory free.

    Change:     Fix the cons/prod handling when looping through the Rx ring.

    Introduced: Day 1.

    Relevance:  All.

Enhancements:
-------------
 1. Request:    Reduce verbosity of driver if no debug verbose is configured.

 2. Request:    Implement NIG drain.

 3. Request:    Implement PF vlan filtering offload.

Version 8.2.0.0 (Jan 11, 2015)
==============================
Internal FW 8.2.0.0

Fixes:
------
 1. Problem:    Ethtool doesn't present log level properly.

    Change:     Return both dp_module and dp_level.

    Introduced: Day 1.

    Relevance:  All.

 2. Problem:    cq77088 - unable to change TSO settings in RHEL6.6.

    Change:     Remove legacy ethtool callbacks on RHEL6.6.

    Introduced: Day 1.

    Relevance:  RHEL6.6.

 3. Problem:    cq77218 - Speed settings are not independent on functions
                belonging to same port in MF mode.

    Change:     Do not allow user to change link parameters in MF mode.

    Introduced: day 1.

    Relevance:  NPAR1.0.

 4. Problem:    cq77306 - Some statistics on VF don't increment under traffic.

    Change:     Remove statistics which are not accessible to VFs from
                appearing in `ethtool -S' output.

    Introduced: Day 1.

    Relevance:  SRIOV.

 5. Problem:    VM is failing to start with hostdev type interface assignment.

    Change:     Implement dummy handler for VLAN configuration for VF.

    Introduced: day 1.

    Relevance:  SRIOV.

 6. Problem:    cq77304 - `ethtool -i' on VF interface doesn't show management
                FW version.

    Change:     Get information from device info for VFs.

    Introduced: Day 1.

    Relevance:  SRIOV.

Enhancements:
-------------
 1. Request:    Present HW GRO statistics via ethtool -S.

 2. Request:    Prevent interface load if MAC address is invalid.

 3. Request:    Send all driver logs to ftrace trace buffer. Add no_tracing
                module parameter to disable.

Version 8.1.3.0 (Nov 24, 2014)
==============================
Internal FW 8.1.4.0

Enhancements:
-------------
 1. Request:    'ethtool -s <dev> speed' now support the configuring of
                10G/20G/40G link speeds.

Version 8.1.2.0 (Nov 18, 2014)
==============================
Internal FW 8.1.4.0

Fixes:
------
 1. Problem:    Rx aggregation performance was insufficient.

    Change:     (FW) Change timer resolution configuration.

    Introduced: Day 1.

    Relevance:  GRO.

Enhancements:
-------------
 1. Request:    Basic multicast filtering support.

 2. Request:    Enable HW GRO by default.

 3. Request:    Enable Tx-Switching between PFs and their child VFs.

Version 8.1.1.0 (Oct 30, 2014)
==============================
Internal FW 8.1.2.0

Fixes:
------
 1. Problem:    cq76211 - stack trace and assert appears in SLES12 after
                ipv6 configures a multicast MAC filter.

    Change:     Remove RTNL_ASSERT() in our set_rx_mode() code.

    Introduced: Day 1.

Version 8.1.0.0 (Oct 07, 2014)
==============================
Internal FW 8.0.3.0

Fixes:
------
 1. Problem:    rx_q_stop ramrods are sent to only one hwfn in case of CMT.

    Change:     Update the rss_id field to enable sending the ramrods to both
                hwfns.

    Introduced: Day 1.

Enhancements:
-------------
 1. Request:    Modified ethtool -d to obtain idle_chks as well as grcDump.
                Should be activated without the 'raw on' parameter.

Version 8.0.2.0 (Sep 28, 2014)
==============================
Internal FW 8.0.3.0

Fixes:
------
 1. Problem:    No tcp traffic under RH6.5 when configuring vlan with hw gro
                enabled.

    Change:     Fix driver flow to correctly extract and set vlan in skb.

    Introduced: Day 1.

Version 8.0.1.0 (Sep 24, 2014)
==============================
Fixes:
------
 1. Problem:    When unloading interfaces logs sometimes show "Failed to find
                an entry this EQE completes".

    Change:     Clear memory of Rx queue stop params before filling it.

    Introduced: Day 1.

 2. Problem:    CQ75384 - system panic in TX handling flow, when IOMMU enabled.

    Change:     Fix unmapping size for split BDs.

    Introduced: Day 1.

Enhancements:
-------------
 1. Request:   CQ75808 rebrand QEDE to QLogic.

Version 8.0.0.8 (Sep 11, 2014)
==============================
Fixes:
------
 1. Problem:    CQ75483 NFS Server crashes while copying large files after
                mounting

    Change:     Fixed wrong BUG_ON condition in tx path.

    Introduced: Day one.

Enhancements:
-------------
 1. Request:   Add driver support for extended ethtool operations. RHEL 6.5 is
              one distro that uses this implementation.

 2. Request:   Remove driver support for ethtool firmware dump commands (i.e.,
              ethtool -w/-W). The same functionality can be achieved with
              ethtool -d.

 3. Request:   Add support for QLogic Brussels and Bangalore device ids.

Version 8.0.0.7 (Sep 04, 2014)
==============================
Fixes:
------
 1. Problem:    CQ74993 - E4: "ethool –i” is not displaying Firmware version.

    Change:     Populate the firmware version strings in the ethtool buffer.

    Introduced: Day one.

Enhancements:
-------------
 1. Request:    Add support for 4x10GF.

 2. Request:    Add support for 25G.

 3. Request:    Properly configure user-changable features.

 4. Request:    Compile on RHEL6.6beta.

Version 8.0.0.6 (Aug 15, 2014)
==============================
 1. Problem:    Changing mtu results in loss of connectivity.

    Change:     start tx queue call was missing.

    Introduced: 8.0.0.5. Introduced by fix#2.

Version 8.0.0.5 (Aug 07, 2014)
==============================
Internal FW 8.0.0.5

Fixes:
------
 1. Problem:    CQ74948,CQ74950 - E4-No boundary condition for MTU Values.

    Change:     Add boundary condition for MTU values on set.

    Introduced: Day one.

 2. Problem:    CQ74974 - E4:System Crash while changing mtu value during
                traffic

    Change:     Fixed race condition between qede unload flow stopping transmit
                queue and tx interrupt re-opening it.

    Introduced: Day one.

Enhancements:
-------------
 1. Request:    Add stats for RX HW recognized errors.

 2. Request:    Add stats for RX buffer allocation errors.

 3. Request:    Add GRO support. Added module parameter gro_disable.
                enabled by default.

Version 8.0.0.4 (Jul 29, 2014)
==============================
Internal FW 8.0.0.4

Enhancements:
-------------
 1. Request:    Add support for ethtool -d (register dump). Note: the 'raw on'
                optional parameter should be used for current parsing tools to
                be able to parse the data.

Version 8.0.0.3 (July 22, 2014)
===============================
Internal FW 8.0.0.3

Fixes:
------
 1. Problem:    IOMMU mapping errors during traffic.

    Change:     Fix in sw_rx_ring mapping mechanism.

    Introduced: Day one.

Enhancements:
-------------
 1. Request:    Added support for ndo_get_vf_config.

 2. Request:    Added support for ndo_set_vf_link_state.

 3. Request:    Prevent kernel from disabling Rx checksum capability,
                as HW always performs it.

 4. Request:    Added support for `ethtool -P | --show-permaddr' for
                kernels prior to 3.9.0.

 5. Request:    Added netdev notifier - allows to update qed with name
                changes when udev changes interface names [corrects the bogus
                qed interface names in system logs].

 6. Request:    Remove limitation of power of 2 for rx/tx rings.

 7. Request:    Present port statistics via ethtool -S.

Version 8.0.0.2 (10 July, 2014)
===============================
Internal FW 8.0.0.3

Enhancements:
-------------
 1. Request:    Added support for `ethtool -r | --negotiate'.

 2. Request:    Added support for `ethtool -g | --show-ring' and
                `ethtool -G | --set-ring'.

 3. Request:    Added support for `ethtool -l | --show-channels' and
                `ethtool -L | --set-channels' [`combined' only].

 4. Request:    Added support for `ethtool --show-priv-flags'.

 5. Request:    Enable support in reading `phys_port_id' from sysfs
                [identifier connecting the network interface to physical port].
