- 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
- IPv4/IPv6 TCP/UDP receive checksum offload
+- Inner IPv4/IPv6 TCP/UDP receive checksum offload
+
- Received packet type information
- Receive side scaling (RSS)
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
----------------
- QUEUE
+- RSS
+
Validating flow rules depends on the firmware variant.
Ethernet destinaton individual/group match
more efficient than libefx-based and provides richer packet type
classification, but lacks Rx scatter support.
-- ``tx_datapath`` [auto|efx] (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**)
- ``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**)