From patchwork Mon Sep 23 14:41:32 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Hyong Youb Kim (hyonkim)" X-Patchwork-Id: 59616 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 8B1E71BF04; Mon, 23 Sep 2019 16:41:49 +0200 (CEST) Received: from rcdn-iport-7.cisco.com (rcdn-iport-7.cisco.com [173.37.86.78]) by dpdk.org (Postfix) with ESMTP id 5F7D41BF04 for ; Mon, 23 Sep 2019 16:41:48 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=cisco.com; i=@cisco.com; l=1942; q=dns/txt; s=iport; t=1569249708; x=1570459308; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=HE5QceqDDHUCpTy1Nqj/Rff9pL/SKzUt2B7PR5NnXww=; b=bP49TIPUpC+0RjoxyWVmNtWyRlj3nIByp2u5G3xSm49ePGNMgiphTGO1 WoagC09kGQ7PVuDFBYyvFROKrWbFRiAXgztI3ahOceEjCvLoYnkMr60vU L1Dlb7MacFWvgw9wm4E7m5xQYNSGq5nfqT+/PsLXvTZf8EUdZLyNDZ5de c=; X-IronPort-AV: E=Sophos;i="5.64,540,1559520000"; d="scan'208";a="629989896" Received: from alln-core-2.cisco.com ([173.36.13.135]) by rcdn-iport-7.cisco.com with ESMTP/TLS/DHE-RSA-SEED-SHA; 23 Sep 2019 14:41:47 +0000 Received: from cisco.com (savbu-usnic-a.cisco.com [10.193.184.48]) by alln-core-2.cisco.com (8.15.2/8.15.2) with ESMTP id x8NEflrF027258; Mon, 23 Sep 2019 14:41:47 GMT Received: by cisco.com (Postfix, from userid 508933) id 0548520F2003; Mon, 23 Sep 2019 07:41:46 -0700 (PDT) From: Hyong Youb Kim To: Ferruh Yigit Cc: dev@dpdk.org, John Daley , Hyong Youb Kim Date: Mon, 23 Sep 2019 07:41:32 -0700 Message-Id: <20190923144134.19066-1-hyonkim@cisco.com> X-Mailer: git-send-email 2.22.0 MIME-Version: 1.0 X-Outbound-SMTP-Client: 10.193.184.48, savbu-usnic-a.cisco.com X-Outbound-Node: alln-core-2.cisco.com Subject: [dpdk-dev] [PATCH v2 0/2] net/enic: a couple new features X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The first patch enables Geneve offload that supports Geneve header options. Previous Geneve offload does not work when options are present. The second patch adds the new flow implementation based on Flow Manager. So the driver now has two implementations: one based on the old filter API, and this new one based on Flow Manager. Flow Manager is newer firmware interface with more actions and match items than the filter API. enic_fm_flow.c is quite large but self contained. We tried to break it up into multiple patches, but it did not really make sense in the end. So sending the whole file in one patch. checkpatches complains about these errors. We checked and found it safe to ignore them (false positives). CHECK:CAMELCASE: Avoid CamelCase: ERROR:COMPLEX_MACRO: Macros with complex values should be enclosed in parentheses Thanks. -Hyong v2: add FMOP_NOP to the flowman header, which was missing in v1 Hyong Youb Kim (2): net/enic: enable Geneve with options offload net/enic: add flow implementation based on Flow Manager API doc/guides/nics/enic.rst | 21 + doc/guides/rel_notes/release_19_11.rst | 5 + drivers/net/enic/Makefile | 1 + drivers/net/enic/base/vnic_dev.c | 90 +- drivers/net/enic/base/vnic_dev.h | 2 + drivers/net/enic/base/vnic_devcmd.h | 19 + drivers/net/enic/base/vnic_flowman.h | 365 ++++ drivers/net/enic/enic.h | 24 +- drivers/net/enic/enic_ethdev.c | 25 +- drivers/net/enic/enic_fm_flow.c | 2459 ++++++++++++++++++++++++ drivers/net/enic/enic_main.c | 30 +- drivers/net/enic/enic_res.c | 13 +- drivers/net/enic/meson.build | 1 + 13 files changed, 3047 insertions(+), 8 deletions(-) create mode 100644 drivers/net/enic/base/vnic_flowman.h create mode 100644 drivers/net/enic/enic_fm_flow.c