From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 2DB59A034C; Wed, 23 Feb 2022 13:28:44 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id F1657426D9; Wed, 23 Feb 2022 13:28:43 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0b-0016f401.pphosted.com [67.231.156.173]) by mails.dpdk.org (Postfix) with ESMTP id 3A326426D5 for ; Wed, 23 Feb 2022 13:28:42 +0100 (CET) Received: from pps.filterd (m0045851.ppops.net [127.0.0.1]) by mx0b-0016f401.pphosted.com (8.16.1.2/8.16.1.2) with ESMTP id 21NC888J023644; Wed, 23 Feb 2022 04:28:41 -0800 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=pfpt0220; bh=i/NcP3QltRW/IpNheIgjkKvcya5/LNxdYt0rTkfDtt0=; b=d3i7LxiFIH5A48pZiIksc7Ap82s81XM2CUdpKo/7GqgZJPAg7VXiJBlvfobNK97U4Qra TOZd25a8QtxUmWi2JOqS2TPqR11e3ZKxvqI5lIWHjTipyKaP1rjce1vp4lowNAZ8R/yt CK8ZIhDjWn4mldDJy2vIXsdnf1qBKtemJRitIj05/H5Pg2H3rf042a41IjXcfkF8pI1d Sb9ogcYkl55Jr47vCDLdEfPbnM5TA4L0O0M/zVzKhwjYgJlJ5YMPYFTeY/CiPkE94AxP JEUClplbEfKPAERqXqQ7aiibVBuHRey227zcETs6BoP4qH8U+MAqYOeI8gdw+70yVn7R eg== Received: from dc5-exch01.marvell.com ([199.233.59.181]) by mx0b-0016f401.pphosted.com (PPS) with ESMTPS id 3edjergmu2-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT); Wed, 23 Feb 2022 04:28:41 -0800 Received: from DC5-EXCH01.marvell.com (10.69.176.38) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server (TLS) id 15.0.1497.2; Wed, 23 Feb 2022 04:28:39 -0800 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH01.marvell.com (10.69.176.38) with Microsoft SMTP Server id 15.0.1497.2 via Frontend Transport; Wed, 23 Feb 2022 04:28:39 -0800 Received: from localhost.localdomain (unknown [10.28.48.55]) by maili.marvell.com (Postfix) with ESMTP id A81FD3F708A; Wed, 23 Feb 2022 04:28:36 -0800 (PST) From: Akhil Goyal To: CC: , , , , , , , Akhil Goyal Subject: [PATCH v3 0/2] net/cnxk: support IP reassembly offload Date: Wed, 23 Feb 2022 17:58:32 +0530 Message-ID: <20220223122834.2571860-1-gakhil@marvell.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20220120165310.4165567-1-gakhil@marvell.com> References: <20220120165310.4165567-1-gakhil@marvell.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-ORIG-GUID: U4WTGeisyG2Q1WuxnJrL10QLef4DQYbC X-Proofpoint-GUID: U4WTGeisyG2Q1WuxnJrL10QLef4DQYbC X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.205,Aquarius:18.0.816,Hydra:6.0.425,FMLib:17.11.64.514 definitions=2022-02-23_05,2022-02-23_01,2022-02-23_01 X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org cn10k platform can support IP reassembly offload for upto 4 fragments in the inline IPsec path. The feature is enabled and tested as per unit test app[1]. The patchset is rebased over [2]. [1]: http://patchwork.dpdk.org/user/todo/dpdk/?series=21716 [2]: http://patchwork.dpdk.org/project/dpdk/list/?series=21801 Changes in v3: - 3rd and 4th patch of the series are separated out. - rebased over a dependent series. changes in v2: - updated as per changes in ethdev patches - dynflags and dynfield for incomplete reassembly are registered in a single API - squashed the patch for dynfield in the reassembly patch. Vidya Sagar Velumuri (2): common/cnxk: configure reassembly specific params net/cnxk: support IP reassembly drivers/common/cnxk/cnxk_security.c | 10 + drivers/common/cnxk/roc_nix_inl.c | 23 + drivers/common/cnxk/roc_nix_inl.h | 7 + drivers/common/cnxk/version.map | 1 + drivers/event/cnxk/cn10k_worker.h | 16 +- drivers/event/cnxk/deq/cn10k/deq_192_207.c | 12 + .../event/cnxk/deq/cn10k/deq_192_207_burst.c | 14 + drivers/event/cnxk/deq/cn10k/deq_192_207_ca.c | 12 + .../cnxk/deq/cn10k/deq_192_207_ca_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_192_207_ca_seg.c | 12 + .../cnxk/deq/cn10k/deq_192_207_ca_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_192_207_ca_tmo.c | 12 + .../cnxk/deq/cn10k/deq_192_207_ca_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_192_207_ca_tmo_seg.c | 13 + .../deq/cn10k/deq_192_207_ca_tmo_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_192_207_dual.c | 12 + .../event/cnxk/deq/cn10k/deq_192_207_seg.c | 12 + .../cnxk/deq/cn10k/deq_192_207_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_192_207_tmo.c | 12 + .../cnxk/deq/cn10k/deq_192_207_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_192_207_tmo_seg.c | 12 + .../deq/cn10k/deq_192_207_tmo_seg_burst.c | 14 + drivers/event/cnxk/deq/cn10k/deq_208_223.c | 12 + .../event/cnxk/deq/cn10k/deq_208_223_burst.c | 14 + drivers/event/cnxk/deq/cn10k/deq_208_223_ca.c | 12 + .../cnxk/deq/cn10k/deq_208_223_ca_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_208_223_ca_seg.c | 12 + .../cnxk/deq/cn10k/deq_208_223_ca_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_208_223_ca_tmo.c | 12 + .../cnxk/deq/cn10k/deq_208_223_ca_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_208_223_ca_tmo_seg.c | 13 + .../deq/cn10k/deq_208_223_ca_tmo_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_208_223_dual.c | 12 + .../event/cnxk/deq/cn10k/deq_208_223_seg.c | 12 + .../cnxk/deq/cn10k/deq_208_223_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_208_223_tmo.c | 12 + .../cnxk/deq/cn10k/deq_208_223_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_208_223_tmo_seg.c | 12 + .../deq/cn10k/deq_208_223_tmo_seg_burst.c | 14 + drivers/event/cnxk/deq/cn10k/deq_224_239.c | 12 + .../event/cnxk/deq/cn10k/deq_224_239_burst.c | 14 + drivers/event/cnxk/deq/cn10k/deq_224_239_ca.c | 12 + .../cnxk/deq/cn10k/deq_224_239_ca_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_224_239_ca_seg.c | 12 + .../cnxk/deq/cn10k/deq_224_239_ca_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_224_239_ca_tmo.c | 12 + .../cnxk/deq/cn10k/deq_224_239_ca_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_224_239_ca_tmo_seg.c | 13 + .../deq/cn10k/deq_224_239_ca_tmo_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_224_239_dual.c | 12 + .../event/cnxk/deq/cn10k/deq_224_239_seg.c | 12 + .../cnxk/deq/cn10k/deq_224_239_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_224_239_tmo.c | 12 + .../cnxk/deq/cn10k/deq_224_239_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_224_239_tmo_seg.c | 12 + .../deq/cn10k/deq_224_239_tmo_seg_burst.c | 14 + drivers/event/cnxk/deq/cn10k/deq_240_255.c | 12 + .../event/cnxk/deq/cn10k/deq_240_255_burst.c | 14 + drivers/event/cnxk/deq/cn10k/deq_240_255_ca.c | 12 + .../cnxk/deq/cn10k/deq_240_255_ca_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_240_255_ca_seg.c | 12 + .../cnxk/deq/cn10k/deq_240_255_ca_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_240_255_ca_tmo.c | 12 + .../cnxk/deq/cn10k/deq_240_255_ca_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_240_255_ca_tmo_seg.c | 13 + .../deq/cn10k/deq_240_255_ca_tmo_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_240_255_dual.c | 12 + .../event/cnxk/deq/cn10k/deq_240_255_seg.c | 12 + .../cnxk/deq/cn10k/deq_240_255_seg_burst.c | 14 + .../event/cnxk/deq/cn10k/deq_240_255_tmo.c | 12 + .../cnxk/deq/cn10k/deq_240_255_tmo_burst.c | 14 + .../cnxk/deq/cn10k/deq_240_255_tmo_seg.c | 12 + .../deq/cn10k/deq_240_255_tmo_seg_burst.c | 14 + drivers/event/cnxk/meson.build | 64 ++ drivers/net/cnxk/cn10k_ethdev.c | 51 ++ drivers/net/cnxk/cn10k_ethdev.h | 2 + drivers/net/cnxk/cn10k_ethdev_sec.c | 14 + drivers/net/cnxk/cn10k_rx.c | 35 +- drivers/net/cnxk/cn10k_rx.h | 672 ++++++++++++++++-- drivers/net/cnxk/cnxk_ethdev.h | 4 + drivers/net/cnxk/meson.build | 16 + drivers/net/cnxk/rx/cn10k/rx_192_207.c | 11 + drivers/net/cnxk/rx/cn10k/rx_192_207_mseg.c | 11 + drivers/net/cnxk/rx/cn10k/rx_192_207_vec.c | 11 + .../net/cnxk/rx/cn10k/rx_192_207_vec_mseg.c | 12 + drivers/net/cnxk/rx/cn10k/rx_208_223.c | 11 + drivers/net/cnxk/rx/cn10k/rx_208_223_mseg.c | 11 + drivers/net/cnxk/rx/cn10k/rx_208_223_vec.c | 11 + .../net/cnxk/rx/cn10k/rx_208_223_vec_mseg.c | 12 + drivers/net/cnxk/rx/cn10k/rx_224_239.c | 11 + drivers/net/cnxk/rx/cn10k/rx_224_239_mseg.c | 11 + drivers/net/cnxk/rx/cn10k/rx_224_239_vec.c | 11 + .../net/cnxk/rx/cn10k/rx_224_239_vec_mseg.c | 12 + drivers/net/cnxk/rx/cn10k/rx_240_255.c | 11 + drivers/net/cnxk/rx/cn10k/rx_240_255_mseg.c | 11 + drivers/net/cnxk/rx/cn10k/rx_240_255_vec.c | 11 + .../net/cnxk/rx/cn10k/rx_240_255_vec_mseg.c | 12 + 97 files changed, 1905 insertions(+), 74 deletions(-) create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_ca_tmo_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_dual.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_192_207_tmo_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_ca_tmo_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_dual.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_208_223_tmo_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_ca_tmo_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_dual.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_224_239_tmo_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_ca_tmo_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_dual.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_seg_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_tmo.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_tmo_burst.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_tmo_seg.c create mode 100644 drivers/event/cnxk/deq/cn10k/deq_240_255_tmo_seg_burst.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_192_207.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_192_207_mseg.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_192_207_vec.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_192_207_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_208_223.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_208_223_mseg.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_208_223_vec.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_208_223_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_224_239.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_224_239_mseg.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_224_239_vec.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_224_239_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_240_255.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_240_255_mseg.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_240_255_vec.c create mode 100644 drivers/net/cnxk/rx/cn10k/rx_240_255_vec_mseg.c -- 2.25.1