summaryrefslogtreecommitdiffstats
path: root/src/spdk/dpdk/doc/guides/nics/igc.rst
diff options
context:
space:
mode:
Diffstat (limited to 'src/spdk/dpdk/doc/guides/nics/igc.rst')
-rw-r--r--src/spdk/dpdk/doc/guides/nics/igc.rst121
1 files changed, 121 insertions, 0 deletions
diff --git a/src/spdk/dpdk/doc/guides/nics/igc.rst b/src/spdk/dpdk/doc/guides/nics/igc.rst
new file mode 100644
index 000000000..4c5e62675
--- /dev/null
+++ b/src/spdk/dpdk/doc/guides/nics/igc.rst
@@ -0,0 +1,121 @@
+.. SPDX-License-Identifier: BSD-3-Clause
+ Copyright(c) 2020 Intel Corporation.
+
+IGC Poll Mode Driver
+======================
+
+The IGC PMD (librte_pmd_igc) provides poll mode driver support for Foxville
+I225 Series Network Adapters.
+
+- For information about I225, please refer to:
+ `https://ark.intel.com/content/www/us/en/ark/products/series/184686/
+ intel-ethernet-controller-i225-series.html`
+
+Config File Options
+~~~~~~~~~~~~~~~~~~~
+
+The following options can be modified in the ``config`` file.
+Please note that enabling debugging options may affect system performance.
+
+- ``CONFIG_RTE_LIBRTE_IGC_PMD`` (default ``y``)
+
+ Toggle compilation of the ``librte_pmd_igc`` driver.
+
+- ``CONFIG_RTE_LIBRTE_IGC_DEBUG_*`` (default ``n``)
+
+ Toggle display of generic debugging messages.
+
+
+Driver compilation and testing
+------------------------------
+
+Refer to the document :ref:`compiling and testing a PMD for a NIC <pmd_build_and_test>`
+for details.
+
+
+Supported Chipsets and NICs
+---------------------------
+
+Foxville LM (I225 LM): Client 2.5G LAN vPro Corporate
+Foxville V (I225 V): Client 2.5G LAN Consumer
+Foxville I (I225 I): Client 2.5G Industrial Temp
+Foxville V (I225 K): Client 2.5G LAN Consumer
+
+
+Sample Application Notes
+------------------------
+
+Vlan filter
+~~~~~~~~~~~
+
+VLAN stripping off only works with inner vlan.
+Only the outer VLAN TPID can be set to a vlan other than 0x8100.
+
+If extend VLAN is enabled:
+
+- The VLAN header in a packet that carries a single VLAN header is treated as the external VLAN.
+
+- Foxville expects that any transmitted packet to have at least the external VLAN added by the
+ software. For those packets where an external VLAN is not present, any offload that relates to
+ inner fields to the EtherType might not be provided.
+
+- If VLAN TX-OFFLOAD is enabled and the packet does not contain an external VLAN, the packet is
+ dropped, and if configured, the queue from which the packet was sent is disabled.
+
+To start ``testpmd``, add vlan 10 to port, set vlan stripping off on, set extend on, set TPID of
+outer VLAN to 0x9100:
+
+.. code-block:: console
+
+ ./app/testpmd -l 4-8 -- -i
+ ...
+
+ testpmd> vlan set filter on 0
+ testpmd> rx_vlan add 10 0
+ testpmd> vlan set strip off 0
+ testpmd> vlan set extend on 0
+ testpmd> vlan set outer tpid 0x9100 0
+
+
+Flow Director
+~~~~~~~~~~~~~
+
+The Flow Director works in receive mode to identify specific flows or sets of flows and route
+them to specific queues.
+
+The Flow Director filters includes the following types:
+
+- ether-type filter
+- 2-tuple filter(destination L4 protocol and destination L4 port)
+- TCP SYN filter
+- RSS filter
+
+Start ``testpmd``:
+
+.. code-block:: console
+
+ ./testpmd -l 4-8 -- i --rxq=4 --txq=4 --pkt-filter-mode=perfect --disable-rss
+
+Add a rule to direct packet whose ``ether-type=0x801`` to queue 1:
+
+.. code-block:: console
+
+ testpmd> flow create 0 ingress pattern eth type is 0x801 / end actions queue index 1 / end
+
+Add a rule to direct packet whose ``ip-protocol=0x6(TCP), tcp_port=0x80`` to queue 1:
+
+.. code-block:: console
+
+ testpmd> flow create 0 ingress pattern eth / ipv4 proto is 6 / tcp dst is 0x80 / end actions queue index 1 / end
+
+Add a rule to direct packet whose ``ip-protocol=0x6(TCP), SYN flag is set`` to queue 1:
+
+.. code-block:: console
+
+ testpmd> flow validate 0 ingress pattern tcp flags spec 0x02 flags mask 0x02 / end actions queue index 1 / end
+
+Add a rule to enable ipv4-udp RSS:
+
+.. code-block:: console
+
+ testpmd> flow create 0 ingress pattern end actions rss types ipv4-udp end / end