From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <johndale@cisco.com>
Received: from rcdn-iport-9.cisco.com (rcdn-iport-9.cisco.com [173.37.86.80])
 by dpdk.org (Postfix) with ESMTP id BB6482BA2
 for <dev@dpdk.org>; Wed, 17 May 2017 05:04:00 +0200 (CEST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple;
 d=cisco.com; i=@cisco.com; l=4045; q=dns/txt; s=iport;
 t=1494990240; x=1496199840;
 h=from:to:cc:subject:date:message-id:in-reply-to: references;
 bh=D7sM5JnotdcG4DsTYZKcPnCMIr6PZlKjemdIgCNVRWM=;
 b=NCcBajJpe4m6CpVD8pbO1z5s7cBLf4P3Zxd5TR3L/G9IgqHlYyrwD9wz
 fMrEgjg2mt5CB9krEIgBAhvR3uj3B/ykEx0P0Pt6vlcGjOUUqm0yuAHLe
 mI/i8xxKOGVRLc30viiOiL0F2jXYQYSf2asASxHkgNj3KXGj9cewBzlG6 U=;
X-IronPort-AV: E=Sophos;i="5.38,352,1491264000"; d="scan'208";a="244144309"
Received: from rcdn-core-4.cisco.com ([173.37.93.155])
 by rcdn-iport-9.cisco.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;
 17 May 2017 03:03:59 +0000
Received: from cisco.com (savbu-usnic-a.cisco.com [10.193.184.48])
 by rcdn-core-4.cisco.com (8.14.5/8.14.5) with ESMTP id v4H33xTH016065;
 Wed, 17 May 2017 03:03:59 GMT
Received: by cisco.com (Postfix, from userid 392789)
 id 16F7720F2001; Tue, 16 May 2017 20:03:59 -0700 (PDT)
From: John Daley <johndale@cisco.com>
To: ferruh.yigit@intel.com
Cc: dev@dpdk.org, John Daley <johndale@cisco.com>
Date: Tue, 16 May 2017 20:03:48 -0700
Message-Id: <20170517030348.2663-7-johndale@cisco.com>
X-Mailer: git-send-email 2.12.0
In-Reply-To: <20170517030348.2663-1-johndale@cisco.com>
References: <20170331020622.25498-8-johndale@cisco.com>
 <20170517030348.2663-1-johndale@cisco.com>
Subject: [dpdk-dev] [PATCH v3 6/6] net/enic: flow API documentation
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Wed, 17 May 2017 03:04:01 -0000

Update enic NIC guide, release notes and add flow API to the
supported features list.

Signed-off-by: John Daley <johndale@cisco.com>
Reviewed-by: Nelson Escobar <neescoba@cisco.com>
---
 doc/guides/nics/enic.rst               | 51 ++++++++++++++++++++++++++++++++++
 doc/guides/nics/features/enic.ini      |  1 +
 doc/guides/rel_notes/release_17_08.rst |  6 ++++
 3 files changed, 58 insertions(+)

diff --git a/doc/guides/nics/enic.rst b/doc/guides/nics/enic.rst
index 89a301585..dbba087ed 100644
--- a/doc/guides/nics/enic.rst
+++ b/doc/guides/nics/enic.rst
@@ -213,6 +213,45 @@ or ``vfio`` in non-IOMMU mode.
 Please see :ref:`Limitations <enic_limitations>` for limitations in
 the use of SR-IOV.
 
+.. _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, ipv4, ipv6, udp, tcp
+  - Actions: queue and void
+  - Selectors: 'is', 'spec' and 'mask'. 'last' is not supported
+  - In total, up to 64 bytes of mask is allowed across all haeders
+
+- **1300 series VICS with Advanced filters enabled**
+
+  - Attributes: ingress
+  - Items: eth, ipv4, ipv6, udp, tcp, vxlan, inner eth, ipv4, ipv6, udp, tcp
+  - Actions: queue, mark, flag and void
+  - Selectors: 'is', 'spec' and 'mask'. 'last' is not supported
+  - In total, up to 64 bytes of mask is allowed across all haeders
+
+More features may be added in future firmware and new versions of the VIC.
+Please refer to the release notes.
+
 .. _enic_limitations:
 
 Limitations
@@ -262,6 +301,18 @@ Limitations
 
 How to build the suite
 ----------------------
+=======
+- 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
+the ENIC PMD library will be built into the DPDK library.
 
 Refer to the document :ref:`compiling and testing a PMD for a NIC
 <pmd_build_and_test>` for details.
diff --git a/doc/guides/nics/features/enic.ini b/doc/guides/nics/features/enic.ini
index 94e7f3cba..0de3ef53c 100644
--- a/doc/guides/nics/features/enic.ini
+++ b/doc/guides/nics/features/enic.ini
@@ -20,6 +20,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_08.rst b/doc/guides/rel_notes/release_17_08.rst
index 74aae10f7..31a43223f 100644
--- a/doc/guides/rel_notes/release_17_08.rst
+++ b/doc/guides/rel_notes/release_17_08.rst
@@ -41,6 +41,12 @@ New Features
      Also, make sure to start the actual text at the margin.
      =========================================================
 
+* **Added Generic Flow API support to enic.**
+
+  Generic flow API support for Ethernet, VLAN, IPv4, IPv6, UDP, TCP, VxLAN and
+  inner Ethernet IPv4, IPv6, UDP, TCP pattern items with QUEUE, MARK and FLAG
+  action for ingress traffic.
+
 
 Resolved Issues
 ---------------
-- 
2.12.0