======================
The ice PMD (**librte_net_ice**) provides poll mode driver support for
-10/25/50/100 Gbps Intel® Ethernet 810 Series Network Adapters based on
-the Intel Ethernet Controller E810.
+10/25/50/100 Gbps Intel® Ethernet 800 Series Network Adapters based on
+the Intel Ethernet Controller E810 and Intel Ethernet Connection E822/E823.
-
-Prerequisites
--------------
+Linux Prerequisites
+-------------------
- Follow the DPDK :ref:`Getting Started Guide for Linux <linux_gsg>` to setup the basic DPDK environment.
- To get better performance on Intel platforms, please follow the "How to get best performance with NICs on Intel platforms"
section of the :ref:`Getting Started Guide for Linux <linux_gsg>`.
+- Please follow the matching list to download specific kernel driver, firmware and DDP package from
+ `https://www.intel.com/content/www/us/en/search.html?ws=text#q=e810&t=Downloads&layout=table`.
+
+- To understand what is DDP package and how it works, please review `Intel® Ethernet Controller E810 Dynamic
+ Device Personalization (DDP) for Telecommunications Technology Guide <https://cdrdv2.intel.com/v1/dl/getContent/617015>`_.
+
+- To understand DDP for COMMs usage with DPDK, please review `Intel® Ethernet 800 Series Telecommunication (Comms)
+ Dynamic Device Personalization (DDP) Package <https://cdrdv2.intel.com/v1/dl/getContent/618651>`_.
+
+Windows Prerequisites
+---------------------
+
+- Follow the DPDK `Getting Started Guide for Windows <https://doc.dpdk.org/guides/windows_gsg/index.html>`_ to setup the basic DPDK environment.
+
+- Identify the Intel® Ethernet adapter and get the latest NVM/FW version.
+
+- To access any Intel® Ethernet hardware, load the NetUIO driver in place of existing built-in (inbox) driver.
+
+- To load NetUIO driver, follow the steps mentioned in `dpdk-kmods repository
+ <https://git.dpdk.org/dpdk-kmods/tree/windows/netuio/README.rst>`_.
+
+- Loading of private Dynamic Device Personalization (DDP) package is not supported on Windows.
+
+
+Recommended Matching List
+-------------------------
+
+It is highly recommended to upgrade the ice kernel driver, firmware and DDP package
+to avoid the compatibility issues with ice PMD.
+Here is the suggested matching list which has been tested and verified.
+The detailed information can refer to chapter Tested Platforms/Tested NICs in release notes.
+
+ +-----------+---------------+-----------------+-----------+--------------+-----------+
+ | DPDK | Kernel Driver | OS Default DDP | COMMS DDP | Wireless DDP | Firmware |
+ +===========+===============+=================+===========+==============+===========+
+ | 20.11 | 1.3.2 | 1.3.20 | 1.3.24 | N/A | 2.3 |
+ +-----------+---------------+-----------------+-----------+--------------+-----------+
+ | 21.02 | 1.4.11 | 1.3.24 | 1.3.28 | 1.3.4 | 2.4 |
+ +-----------+---------------+-----------------+-----------+--------------+-----------+
+
Pre-Installation Configuration
------------------------------
- ``CPU``
On the X86 platform, the driver checks if the CPU supports AVX2.
If it's supported, AVX2 paths will be chosen. If not, SSE is chosen.
+ If the CPU supports AVX512 and EAL argument ``--force-max-simd-bitwidth``
+ is set to 512, AVX512 paths will be chosen.
- ``Offload features``
- The supported HW offload features are described in the document ice_vec.ini.
+ The supported HW offload features are described in the document ice.ini,
+ A value "P" means the offload feature is not supported by vector path.
If any not supported features are used, ICE vector PMD is disabled and the
normal paths are chosen.
A symbolic link to the DDP package file is also ok. The same package
file is used by both the kernel driver and the DPDK PMD.
+
+ .. Note::
+
+ Windows support: The DDP package is not supported on Windows so,
+ loading of the package is disabled on Windows.