X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fnics%2Ftxgbe.rst;h=2c2b6549f1a2a601fa94d801712b04268b0fb6c2;hb=47db46bb7613371b4d8186ef51956dcccac524ca;hp=717c54039b7609c025892417e343df5dd80f2dd6;hpb=0e484278c85f17ebf1d6a03b4ff93f1511245b9e;p=dpdk.git diff --git a/doc/guides/nics/txgbe.rst b/doc/guides/nics/txgbe.rst index 717c54039b..2c2b6549f1 100644 --- a/doc/guides/nics/txgbe.rst +++ b/doc/guides/nics/txgbe.rst @@ -1,5 +1,5 @@ .. SPDX-License-Identifier: BSD-3-Clause - Copyright(c) 2015-2020. + Copyright(c) 2015-2020 Beijing WangXun Technology Co., Ltd. TXGBE Poll Mode Driver ====================== @@ -11,14 +11,25 @@ Features -------- - Multiple queues for TX and RX -- MAC filtering +- Receiver Side Scaling (RSS) +- MAC/VLAN filtering - Packet type information - Checksum offload +- VLAN/QinQ stripping and inserting - TSO offload +- Promiscuous mode +- Multicast mode +- Port hardware statistics - Jumbo frames - Link state information +- Link flow control +- Interrupt mode for RX - Scattered and gather for TX and RX +- DCB +- IEEE 1588 +- FW version - LRO +- Generic flow API Prerequisites ------------- @@ -52,6 +63,10 @@ Please note that enabling debugging options may affect system performance. Toggle display of transmit descriptor clean messages. +- ``RTE_LIBRTE_TXGBE_PF_DISABLE_STRIP_CRC`` (undefined by default) + + Decide to enable or disable HW CRC in VF PMD. + Dynamic Logging Parameters ~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -69,12 +84,105 @@ TXGBE PMD provides the following log types available for control: Extra logging of the messages during PMD initialization. +- ``pmd.net.txgbe.bp`` (default level is **notice**) + + Extra logging of auto-negtiation process for backplane NICs. + Supply ``--log-level=pmd.net.txgbe.bp:debug`` to view messages. + +Runtime Options +~~~~~~~~~~~~~~~ + +The following ``devargs`` options can be enabled at runtime. They must +be passed as part of EAL arguments. For example, + +.. code-block:: console + + dpdk-testpmd -a 01:00.0,auto_neg=1 -- -i + +Please note that following ``devargs`` are only set for backplane NICs. + +- ``auto_neg`` (default **1**) + + Toggle behavior to use auto-negotiation mode or force mode to + link up backplane NICs. + +- ``poll`` (default **0**) + + Toggle behavior to enable/disable polling mode to receive AN interrupt. + +- ``present`` (default **1**) + + Toggle behavior to use present mode or init mode. + +- ``sgmii`` (default **0**) + + Special treatment for KX SGMII cards. + +- ``ffe_set`` (default **0**) + + Use to set PHY link mode and enable FFE parameters for user debugging. + If disabled, the FFE parameters will not take effect. Otherwise, set 1 + for SFI mode, set 2 for KR mode, set 3 for KX4 mode, set 4 for KX mode. + +- ``ffe_main`` (default **27**) + + PHY parameter used for user debugging. Setting other values to + take effect requires setting the ``ffe_set``. + +- ``ffe_pre`` (default **8**) + + PHY parameter used for user debugging. Setting other values to + take effect requires setting the ``ffe_set``. + +- ``ffe_post`` (default **44**) + + PHY parameter used for user debugging. Setting other values to + take effect requires setting the ``ffe_set``. + Driver compilation and testing ------------------------------ Refer to the document :ref:`compiling and testing a PMD for a NIC ` for details. +Sample Application Notes +------------------------ + +Generic flow API +~~~~~~~~~~~~~~~~ + +TXGBE PMD supports generic flow API which configures hardware to match specific +ingress or egress traffic, alter its fate and query related counters according +to any number of user-defined rules. + +A flow rule is the combination of attributes with a matching pattern and a list of +actions. Theorically one rule can match more than one filters, which named for +different patterns and actions. Like ethertype filter defines a rule in pattern: +the first not void item can be ETH, and the next not void item must be END. + +For example, create a flow rule: + +.. code-block:: console + + testpmd> flow create 0 ingress pattern eth type is 0x0806 / end actions queue index 2 / end + +For a detailed usage description please refer to "Flow rules management" section in DPDK :doc:`Testpmd Runtime Functions <../testpmd_app_ug/testpmd_funcs>`. + +Traffic Management API +~~~~~~~~~~~~~~~~~~~~~~ + +TXGBE PMD supports generic DPDK Traffic Management API which allows to +configure the following features: hierarchical scheduling, traffic shaping, +congestion management, packet marking. + +For example, add shaper profile + +.. code-block:: console + + testpmd> add port tm node shaper profile 0 0 0 0 25000000 0 0 + +For a detailed usage description please refer to "Traffic Management" section in DPDK :doc:`Testpmd Runtime Functions <../testpmd_app_ug/testpmd_funcs>`. + Limitations or Known issues ---------------------------