Update enic NIC guide, release notes and add flow API to the supported features list.
Signed-off-by: John Daley <johnd...@cisco.com> --- doc/guides/nics/enic.rst | 44 ++++++++++++++++++++++++++++++++++ doc/guides/nics/features/enic.ini | 1 + doc/guides/rel_notes/release_17_05.rst | 6 +++++ 3 files changed, 51 insertions(+) diff --git a/doc/guides/nics/enic.rst b/doc/guides/nics/enic.rst index c535b589c..a71add3ab 100644 --- a/doc/guides/nics/enic.rst +++ b/doc/guides/nics/enic.rst @@ -140,6 +140,43 @@ Masking of these feilds for partial match is also supported. Without advanced filter support, the flow director is limited to IPv4 perfect filtering of the 5-tuple with no masking of fields supported. +.. _enic-genic-flow-api: + +Generic Flow API support +------------------------ + +Generic Flow API is supported. The baseline support is: + +- **1200 series VICs** + +5-tuple exact Flow support for 1200 series adapters. This allows: + + - Attributes: ingress + - Items: ipv4, ipv6, udp, tcp (must exactly match src/dst IP + addresses and ports and all must be specified). + - Actions: queue and void + - Selectors: 'is' + +- **1300 series VICS with Advanced filters disabled** + +With advanced filters disabled, an IPv4 or IPv6 item must be specified +in the pattern. + + - Attributes: ingress + - Items: eth, ipv4, ipv6, udp, tcp, vxlan, inner eth (full hdr masking) + - Actions: queue and void + - Selectors: 'is', 'spec' and 'mask'. 'last' is not supported + +- **1300 series VICS with Advanced filters enabled** + + - Attributes: ingress + - Items: eth, ipv4, ipv6, udp, tcp, vxlan, inner eth (full hdr masking) + - Actions: queue, mark, flag and void + - Selectors: 'is', 'spec' and 'mask'. 'last' is not supported + +More features may be added in future firmware and new versions of the VIC. +Please refer to the release notes. + Limitations ----------- @@ -169,6 +206,13 @@ Limitations - Flow director features are not supported on generation 1 Cisco VIC adapters (M81KR and P81E) +- The number of filters that can be specified with the Generic Flow API is + dependent on how many header fields are being masked. Use 'flow create' in + a loop to determine how many filters your VIC will support (not more than + 1000 for 1300 series VICs. Filter are checked for matching in the order they + were added. Since there currently is no grouping or priority support, + 'catch-all' filters should be added last. + How to build the suite? ----------------------- The build instructions for the DPDK suite should be followed. By default diff --git a/doc/guides/nics/features/enic.ini b/doc/guides/nics/features/enic.ini index 51b330fa8..f1a877043 100644 --- a/doc/guides/nics/features/enic.ini +++ b/doc/guides/nics/features/enic.ini @@ -19,6 +19,7 @@ VLAN filter = Y CRC offload = Y VLAN offload = Y Flow director = Y +Flow API = Y L3 checksum offload = Y L4 checksum offload = Y Packet type parsing = Y diff --git a/doc/guides/rel_notes/release_17_05.rst b/doc/guides/rel_notes/release_17_05.rst index 26ae57f44..73b66eb17 100644 --- a/doc/guides/rel_notes/release_17_05.rst +++ b/doc/guides/rel_notes/release_17_05.rst @@ -98,6 +98,12 @@ New Features Rx queues can be armed with an interrupt which will trigger on the next packet arrival. +* **Added Generic Flow API support to enic.** + + Generic flow API support for Ethernet, VLAN, IPv4, IPv6, UDP, TCP, VxLAN and + inner Ethernet pattern items with QUEUE, MARK and FLAG action for ingress + traffic. + * **Updated the sfc_efx driver.** * Generic flow API support for Ethernet, VLAN, IPv4, IPv6, UDP and TCP -- 2.12.0