X-Git-Url: http://git.droids-corp.org/?a=blobdiff_plain;f=doc%2Fguides%2Fnics%2Fsfc_efx.rst;h=8e0782cdd1dc792b0ee2b65b163f1123abf9390c;hb=27cea11686ff;hp=5c9662531124c4961b46f758a3ecfe9dbd11c49b;hpb=8b00f426eb6614d5c01fec95cdc271700f85f886;p=dpdk.git diff --git a/doc/guides/nics/sfc_efx.rst b/doc/guides/nics/sfc_efx.rst index 5c96625311..8e0782cdd1 100644 --- a/doc/guides/nics/sfc_efx.rst +++ b/doc/guides/nics/sfc_efx.rst @@ -48,6 +48,8 @@ SFC EFX PMD has support for: - IPv4/IPv6 TCP/UDP transmit checksum offload +- Inner IPv4/IPv6 TCP/UDP transmit checksum offload + - Port hardware statistics - Extended statistics (see Solarflare Server Adapter User's Guide for @@ -69,6 +71,8 @@ SFC EFX PMD has support for: - IPv4/IPv6 TCP/UDP receive checksum offload +- Inner IPv4/IPv6 TCP/UDP receive checksum offload + - Received packet type information - Receive side scaling (RSS) @@ -116,6 +120,26 @@ required in the receive buffer. It should be taken into account when mbuf pool for receive is created. +Tunnels support +--------------- + +NVGRE, VXLAN and GENEVE tunnels are supported on SFN8xxx family adapters +with full-feature firmware variant running. +**sfboot** should be used to configure NIC to run full-feature firmware variant. +See Solarflare Server Adapter User's Guide for details. + +SFN8xxx family adapters provide either inner or outer packet classes. +If adapter firmware advertises support for tunnels then the PMD +configures the hardware to report inner classes, and outer classes are +not reported in received packets. +However, for VXLAN and GENEVE tunnels the PMD does report UDP as the +outer layer 4 packet type. + +SFN8xxx family adapters report GENEVE packets as VXLAN. +If UDP ports are configured for only one tunnel type then it is safe to +treat VXLAN packet type indication as the corresponding UDP tunnel type. + + Flow API support ---------------- @@ -148,6 +172,8 @@ Supported actions: - QUEUE +- RSS + Validating flow rules depends on the firmware variant. Ethernet destinaton individual/group match @@ -236,16 +262,23 @@ boolean parameters value. more efficient than libefx-based and provides richer packet type classification, but lacks Rx scatter support. -- ``tx_datapath`` [auto|efx|ef10] (default **auto**) +- ``tx_datapath`` [auto|efx|ef10|ef10_simple] (default **auto**) Choose transmit datapath implementation. **auto** allows the driver itself to make a choice based on firmware features available and required by the datapath implementation. **efx** chooses libefx-based datapath which supports VLAN insertion (full-feature firmware variant only), TSO and multi-segment mbufs. + Mbuf segments may come from different mempools, and mbuf reference + counters are treated responsibly. **ef10** chooses EF10 (SFN7xxx, SFN8xxx) native datapath which is more efficient than libefx-based but has no VLAN insertion and TSO support yet. + Mbuf segments may come from different mempools, and mbuf reference + counters are treated responsibly. + **ef10_simple** chooses EF10 (SFN7xxx, SFN8xxx) native datapath which + is even more faster then **ef10** but does not support multi-segment + mbufs, disallows multiple mempools and neglects mbuf reference counters. - ``perf_profile`` [auto|throughput|low-latency] (default **throughput**) @@ -256,7 +289,7 @@ boolean parameters value. - ``debug_init`` [bool] (default **n**) - Enable extra logging during device intialization and startup. + Enable extra logging during device initialization and startup. - ``mcdi_logging`` [bool] (default **n**)