From patchwork Fri Jun 29 18:12:15 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rahul Lakkireddy X-Patchwork-Id: 41987 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 447FD1B90B; Fri, 29 Jun 2018 20:13:35 +0200 (CEST) Received: from stargate.chelsio.com (stargate.chelsio.com [12.32.117.8]) by dpdk.org (Postfix) with ESMTP id 36E161B903 for ; Fri, 29 Jun 2018 20:13:33 +0200 (CEST) Received: from localhost (scalar.blr.asicdesigners.com [10.193.185.94]) by stargate.chelsio.com (8.13.8/8.13.8) with ESMTP id w5TIDROT028611; Fri, 29 Jun 2018 11:13:27 -0700 From: Rahul Lakkireddy To: dev@dpdk.org Cc: shaguna@chelsio.com, indranil@chelsio.com, nirranjan@chelsio.com Date: Fri, 29 Jun 2018 23:42:15 +0530 Message-Id: X-Mailer: git-send-email 2.5.3 Subject: [dpdk-dev] [PATCH 0/9] net/cxgbe: add support for offloading flows to HASH region 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" This series of patches add support to offload flows to HASH region available on Chelsio T6 NICs. HASH region can only offload exact match (maskless) flows and hence the masks must be all set for all match items. Patch 1 queries firmware for HASH filter support. Patch 2 updates cxgbe_flow to decide whether to place flows in LE-TCAM or HASH region based on supported hardware configuration and masks of match items. Patch 3 adds Compressed Local IP (CLIP) region support for offloading IPv6 flows in HASH region. Also updates LE-TCAM region to use CLIP for offloading IPv6 flows on Chelsio T6 NICs. Patch 4 adds support for offloading flows to HASH region. Patch 5 adds support for deleting flows in HASH region. Patch 6 adds support to query hit and byte counters for offloaded flows in HASH region. Patch 7 adds support to flush filters in HASH region. Patch 8 adds support to match flows based on physical ingress port. Patch 9 adds support to redirect packets matching flows to specified physical egress port without sending them to host. Thanks, Rahul Shagun Agrawal (9): net/cxgbe: query firmware for HASH filter resources net/cxgbe: validate flows offloaded to HASH region net/cxgbe: add Compressed Local IP region net/cxgbe: add support to offload flows to HASH region net/cxgbe: add support to delete flows in HASH region net/cxgbe: add support to query hit counters for flows in HASH region net/cxgbe: add support to flush flows in HASH region net/cxgbe: add support to match on ingress physical port net/cxgbe: add support to redirect packets to egress physical port drivers/net/cxgbe/Makefile | 1 + drivers/net/cxgbe/base/adapter.h | 43 ++ drivers/net/cxgbe/base/common.h | 10 + drivers/net/cxgbe/base/t4_hw.c | 7 + drivers/net/cxgbe/base/t4_msg.h | 188 +++++++++ drivers/net/cxgbe/base/t4_regs.h | 12 + drivers/net/cxgbe/base/t4_tcb.h | 26 ++ drivers/net/cxgbe/base/t4fw_interface.h | 31 ++ drivers/net/cxgbe/clip_tbl.c | 195 +++++++++ drivers/net/cxgbe/clip_tbl.h | 31 ++ drivers/net/cxgbe/cxgbe_compat.h | 12 + drivers/net/cxgbe/cxgbe_filter.c | 697 ++++++++++++++++++++++++++++++-- drivers/net/cxgbe/cxgbe_filter.h | 13 +- drivers/net/cxgbe/cxgbe_flow.c | 151 ++++++- drivers/net/cxgbe/cxgbe_main.c | 170 +++++++- drivers/net/cxgbe/cxgbe_ofld.h | 66 ++- 16 files changed, 1614 insertions(+), 39 deletions(-) create mode 100644 drivers/net/cxgbe/base/t4_tcb.h create mode 100644 drivers/net/cxgbe/clip_tbl.c create mode 100644 drivers/net/cxgbe/clip_tbl.h