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 13D9945954; Tue, 10 Sep 2024 10:59:32 +0200 (CEST) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 03610427BD; Tue, 10 Sep 2024 10:59:32 +0200 (CEST) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id 4D4D1427A7 for ; Tue, 10 Sep 2024 10:59:30 +0200 (CEST) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.18.1.2/8.18.1.2) with ESMTP id 48A4qBeJ029385 for ; Tue, 10 Sep 2024 01:59:29 -0700 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=marvell.com; h= cc:content-transfer-encoding:content-type:date:from:message-id :mime-version:subject:to; s=pfpt0220; bh=lhiGkn7p/ePPkAjU1wDhCMd 88Qzh86nlhUJZ9GFF7f8=; b=UMYpgyvjobZg1OTV5VOoiIkO5VPMGfe2qDuevDc nNSknR8Yj6HYmb62qUeXoxzzwDSi8J0ZpNVMDMQkHIZkYqpYB1YKL7CQqkesdcrA 5ea5xPdrNa4a9Pvfp88VrUl28AwOUFNywDXLdYpoU7VPSSrubfHEynVYIY01S5c7 zvlWt0KDdeP6E+RaX2LwR1VEpDKuLLK3vUMiwZMbiU7Iq7Hj+96gG3oBoWJy3ATx MmnFbDqEXDrefjrN2NNdWTv1zA4DBTN5W9un21qKWlrRVcEAEzDp1tvBHwaHR2Q+ 8NLC6uZ/yOuqb81uBZ4+czZyPmY4/H/Zb46yLOhU4xxsL0Q== Received: from dc6wp-exch02.marvell.com ([4.21.29.225]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 41gygtg1bk-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=NOT) for ; Tue, 10 Sep 2024 01:59:29 -0700 (PDT) Received: from DC6WP-EXCH02.marvell.com (10.76.176.209) by DC6WP-EXCH02.marvell.com (10.76.176.209) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.2.1544.4; Tue, 10 Sep 2024 01:59:28 -0700 Received: from maili.marvell.com (10.69.176.80) by DC6WP-EXCH02.marvell.com (10.76.176.209) with Microsoft SMTP Server id 15.2.1544.4 via Frontend Transport; Tue, 10 Sep 2024 01:59:28 -0700 Received: from hyd1588t430.caveonetworks.com (unknown [10.29.52.204]) by maili.marvell.com (Postfix) with ESMTP id 87EDB3F709E; Tue, 10 Sep 2024 01:59:26 -0700 (PDT) From: Nithin Dabilpuram To: CC: , Nithin Dabilpuram Subject: [PATCH 00/33] add Marvell cn20k SOC support for mempool and net Date: Tue, 10 Sep 2024 14:28:36 +0530 Message-ID: <20240910085909.1514457-1-ndabilpuram@marvell.com> X-Mailer: git-send-email 2.34.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-ORIG-GUID: a-iKF92-Qh9foLg2dBbkSDIt7QxPcQmj X-Proofpoint-GUID: a-iKF92-Qh9foLg2dBbkSDIt7QxPcQmj X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.293,Aquarius:18.0.1039,Hydra:6.0.680,FMLib:17.12.60.29 definitions=2024-09-06_09,2024-09-06_01,2024-09-02_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 This series adds support for Marvell cn20k SOC for mempool and net PMD's. This series also adds few net/cnxk PMD updates to expose IPsec features supported by HW that are very custom in nature and some enhancements for cn10k. Depends-on: series-32878 ("Marvell cn20K SOC base code") Ashwin Sekhar T K (4): mempool/cnxk: add cn20k PCI device ids common/cnxk: accommodate change in aura field width common/cnxk: use new NPA aq enq mbox for cn20k mempool/cnxk: initialize mempool ops for cn20k Nithin Dabilpuram (12): net/cnxk: move PMD function defines to common code net/cnxk: add cn20k base control path support net/cnxk: support Rx function select for cn20k net/cnxk: support Tx function select for cn20k net/cnxk: support Rx burst scalar for cn20k net/cnxk: support Rx burst vector for cn20k net/cnxk: support Tx burst scalar for cn20k net/cnxk: support Tx multi-seg in cn20k net/cnxk: support Tx burst vector for cn20k net/cnxk: support Tx multi-seg in vector for cn20k common/cnxk: add flush wait after write of inline ctx common/cnxk: fix CPT HW word size for outbound SA Rakesh Kudurumalla (5): net/cnxk: added telemetry support do dump SA information net/cnxk: handle timestamp correctly for VF net/cnxk: update Rx offloads to handle timestamp event/cnxk: handle timestamp for event mode net/cnxk: update mbuf and rearm data for Rx inject packets Satha Rao (5): common/cnxk: add cn20k NIX register definitions common/cnxk: support NIX queue config for cn20k common/cnxk: support bandwidth profile for cn20k common/cnxk: support NIX debug for cn20k common/cnxk: add RSS support for cn20k Srujana Challa (5): net/cnxk: add PMD APIs for IPsec SA base and flush net/cnxk: add PMD APIs to submit CPT instruction net/cnxk: add PMD API to retrieve CPT queue statistics net/cnxk: add option to enable custom inbound sa usage net/cnxk: add PMD API to retrieve the model string Sunil Kumar Kori (2): common/cnxk: remove restriction to clear RPM stats common/cnxk: allow MAC address set/add with active VFs doc/guides/nics/cnxk.rst | 25 + drivers/common/cnxk/cnxk_telemetry_nix.c | 260 +- drivers/common/cnxk/hw/nix.h | 524 ++- drivers/common/cnxk/hw/npa.h | 164 +- drivers/common/cnxk/hw/rvu.h | 7 +- drivers/common/cnxk/roc_ie_ot.c | 1 + drivers/common/cnxk/roc_mbox.h | 84 + drivers/common/cnxk/roc_nix.c | 15 +- drivers/common/cnxk/roc_nix.h | 3 + drivers/common/cnxk/roc_nix_bpf.c | 528 ++- drivers/common/cnxk/roc_nix_debug.c | 243 +- drivers/common/cnxk/roc_nix_fc.c | 106 +- drivers/common/cnxk/roc_nix_inl.c | 105 +- drivers/common/cnxk/roc_nix_inl.h | 29 +- drivers/common/cnxk/roc_nix_inl_dev.c | 35 + drivers/common/cnxk/roc_nix_inl_priv.h | 3 + drivers/common/cnxk/roc_nix_mac.c | 15 - drivers/common/cnxk/roc_nix_priv.h | 4 +- drivers/common/cnxk/roc_nix_queue.c | 638 ++- drivers/common/cnxk/roc_nix_rss.c | 74 +- drivers/common/cnxk/roc_nix_stats.c | 55 +- drivers/common/cnxk/roc_nix_tm.c | 22 +- drivers/common/cnxk/roc_nix_tm_ops.c | 29 +- drivers/common/cnxk/roc_npa.c | 100 +- drivers/common/cnxk/roc_npa.h | 24 +- drivers/common/cnxk/roc_npa_debug.c | 17 +- drivers/common/cnxk/version.map | 2 + drivers/event/cnxk/cn10k_eventdev.c | 32 + drivers/event/cnxk/cn9k_eventdev.c | 31 + drivers/event/cnxk/cnxk_eventdev_adptr.c | 2 +- drivers/mempool/cnxk/cnxk_mempool.c | 2 + drivers/mempool/cnxk/cnxk_mempool_ops.c | 2 +- drivers/net/cnxk/cn10k_ethdev.c | 20 +- drivers/net/cnxk/cn10k_ethdev_sec.c | 108 +- drivers/net/cnxk/cn10k_rx.h | 12 +- drivers/net/cnxk/cn20k_ethdev.c | 943 +++++ drivers/net/cnxk/cn20k_ethdev.h | 15 + drivers/net/cnxk/cn20k_rx.h | 1100 ++++++ drivers/net/cnxk/cn20k_rx_select.c | 160 + drivers/net/cnxk/cn20k_rxtx.h | 245 ++ drivers/net/cnxk/cn20k_tx.h | 3471 +++++++++++++++++ drivers/net/cnxk/cn20k_tx_select.c | 122 + drivers/net/cnxk/cn9k_ethdev.c | 17 +- drivers/net/cnxk/cn9k_ethdev_sec.c | 14 + drivers/net/cnxk/cnxk_ethdev.c | 13 +- drivers/net/cnxk/cnxk_ethdev.h | 52 + drivers/net/cnxk/cnxk_ethdev_devargs.c | 4 + drivers/net/cnxk/cnxk_ethdev_dp.h | 3 + drivers/net/cnxk/cnxk_ethdev_sec.c | 138 +- drivers/net/cnxk/cnxk_ethdev_sec_telemetry.c | 145 +- drivers/net/cnxk/meson.build | 92 +- drivers/net/cnxk/rte_pmd_cnxk.h | 163 +- drivers/net/cnxk/rx/cn20k/rx_0_15.c | 20 + drivers/net/cnxk/rx/cn20k/rx_0_15_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_0_15_vec.c | 20 + drivers/net/cnxk/rx/cn20k/rx_0_15_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_112_127.c | 20 + drivers/net/cnxk/rx/cn20k/rx_112_127_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_112_127_vec.c | 20 + .../net/cnxk/rx/cn20k/rx_112_127_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_16_31.c | 20 + drivers/net/cnxk/rx/cn20k/rx_16_31_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_16_31_vec.c | 20 + drivers/net/cnxk/rx/cn20k/rx_16_31_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_32_47.c | 20 + drivers/net/cnxk/rx/cn20k/rx_32_47_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_32_47_vec.c | 20 + drivers/net/cnxk/rx/cn20k/rx_32_47_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_48_63.c | 20 + drivers/net/cnxk/rx/cn20k/rx_48_63_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_48_63_vec.c | 20 + drivers/net/cnxk/rx/cn20k/rx_48_63_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_64_79.c | 20 + drivers/net/cnxk/rx/cn20k/rx_64_79_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_64_79_vec.c | 20 + drivers/net/cnxk/rx/cn20k/rx_64_79_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_80_95.c | 20 + drivers/net/cnxk/rx/cn20k/rx_80_95_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_80_95_vec.c | 20 + drivers/net/cnxk/rx/cn20k/rx_80_95_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_96_111.c | 20 + drivers/net/cnxk/rx/cn20k/rx_96_111_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_96_111_vec.c | 20 + .../net/cnxk/rx/cn20k/rx_96_111_vec_mseg.c | 20 + drivers/net/cnxk/rx/cn20k/rx_all_offload.c | 57 + drivers/net/cnxk/tx/cn20k/tx_0_15.c | 18 + drivers/net/cnxk/tx/cn20k/tx_0_15_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_0_15_vec.c | 18 + drivers/net/cnxk/tx/cn20k/tx_0_15_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_112_127.c | 18 + drivers/net/cnxk/tx/cn20k/tx_112_127_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_112_127_vec.c | 18 + .../net/cnxk/tx/cn20k/tx_112_127_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_16_31.c | 18 + drivers/net/cnxk/tx/cn20k/tx_16_31_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_16_31_vec.c | 18 + drivers/net/cnxk/tx/cn20k/tx_16_31_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_32_47.c | 18 + drivers/net/cnxk/tx/cn20k/tx_32_47_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_32_47_vec.c | 18 + drivers/net/cnxk/tx/cn20k/tx_32_47_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_48_63.c | 18 + drivers/net/cnxk/tx/cn20k/tx_48_63_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_48_63_vec.c | 18 + drivers/net/cnxk/tx/cn20k/tx_48_63_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_64_79.c | 18 + drivers/net/cnxk/tx/cn20k/tx_64_79_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_64_79_vec.c | 18 + drivers/net/cnxk/tx/cn20k/tx_64_79_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_80_95.c | 18 + drivers/net/cnxk/tx/cn20k/tx_80_95_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_80_95_vec.c | 18 + drivers/net/cnxk/tx/cn20k/tx_80_95_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_96_111.c | 18 + drivers/net/cnxk/tx/cn20k/tx_96_111_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_96_111_vec.c | 18 + .../net/cnxk/tx/cn20k/tx_96_111_vec_mseg.c | 18 + drivers/net/cnxk/tx/cn20k/tx_all_offload.c | 39 + drivers/net/cnxk/version.map | 7 + 119 files changed, 10826 insertions(+), 511 deletions(-) create mode 100644 drivers/net/cnxk/cn20k_ethdev.c create mode 100644 drivers/net/cnxk/cn20k_ethdev.h create mode 100644 drivers/net/cnxk/cn20k_rx.h create mode 100644 drivers/net/cnxk/cn20k_rx_select.c create mode 100644 drivers/net/cnxk/cn20k_rxtx.h create mode 100644 drivers/net/cnxk/cn20k_tx.h create mode 100644 drivers/net/cnxk/cn20k_tx_select.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_0_15.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_0_15_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_0_15_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_0_15_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_112_127.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_112_127_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_112_127_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_112_127_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_16_31.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_16_31_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_16_31_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_16_31_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_32_47.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_32_47_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_32_47_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_32_47_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_48_63.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_48_63_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_48_63_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_48_63_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_64_79.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_64_79_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_64_79_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_64_79_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_80_95.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_80_95_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_80_95_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_80_95_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_96_111.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_96_111_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_96_111_vec.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_96_111_vec_mseg.c create mode 100644 drivers/net/cnxk/rx/cn20k/rx_all_offload.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_0_15.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_0_15_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_0_15_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_0_15_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_112_127.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_112_127_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_112_127_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_112_127_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_16_31.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_16_31_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_16_31_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_16_31_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_32_47.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_32_47_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_32_47_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_32_47_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_48_63.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_48_63_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_48_63_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_48_63_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_64_79.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_64_79_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_64_79_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_64_79_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_80_95.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_80_95_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_80_95_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_80_95_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_96_111.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_96_111_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_96_111_vec.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_96_111_vec_mseg.c create mode 100644 drivers/net/cnxk/tx/cn20k/tx_all_offload.c -- 2.34.1