From patchwork Wed Jan 25 11:31:25 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rahul Bhansali X-Patchwork-Id: 122519 X-Patchwork-Delegate: jerinj@marvell.com Return-Path: X-Original-To: patchwork@inbox.dpdk.org Delivered-To: patchwork@inbox.dpdk.org Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 6FDCE42485; Wed, 25 Jan 2023 12:32:03 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 6357D42D83; Wed, 25 Jan 2023 12:32:03 +0100 (CET) Received: from mx0b-0016f401.pphosted.com (mx0a-0016f401.pphosted.com [67.231.148.174]) by mails.dpdk.org (Postfix) with ESMTP id BB4A542D87 for ; Wed, 25 Jan 2023 12:32:01 +0100 (CET) Received: from pps.filterd (m0045849.ppops.net [127.0.0.1]) by mx0a-0016f401.pphosted.com (8.17.1.19/8.17.1.19) with ESMTP id 30P9F57Y028383 for ; Wed, 25 Jan 2023 03:32:01 -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=SyWhCuyp0m5X87os3c0mXpIwBfUVKp422NkrRx0QRVM=; b=d4Xm4KAWoGeDPMQjfliJmKSL03v89U/anC6twCE2NccUqsk7NgDB9Ighq4GvgQ9du0xd OFA50aiYC1+cgNcn4fIth7TLGHWsJjuSAW4oA+9Q7Vvmy+1fTmINHZ8KuHUYGGS08kgZ EtYLVcSkRGsYWXDmWuyvIEzZlltzf13Vnzk+RUEOju5V6CGnZ+1zQVdg8wD1Ve/Dk5+4 zq3mrDYu5ssIhXI5vDBVBNxrpm7t8AVHA5KmgpN8V3qN8Yrd1bpTihGDWD19sp/+zRK1 KU113ve13BODQhvFiNHoglxxZDHH+GHo1W3Vq/Y8j2/quAMpjlJFtipFwmy3trBfO/AC Aw== Received: from dc5-exch02.marvell.com ([199.233.59.182]) by mx0a-0016f401.pphosted.com (PPS) with ESMTPS id 3nb0hp8j14-1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-SHA384 bits=256 verify=NOT) for ; Wed, 25 Jan 2023 03:32:00 -0800 Received: from DC5-EXCH02.marvell.com (10.69.176.39) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server (TLS) id 15.0.1497.42; Wed, 25 Jan 2023 03:31:58 -0800 Received: from maili.marvell.com (10.69.176.80) by DC5-EXCH02.marvell.com (10.69.176.39) with Microsoft SMTP Server id 15.0.1497.42 via Frontend Transport; Wed, 25 Jan 2023 03:31:58 -0800 Received: from localhost.localdomain (unknown [10.28.36.158]) by maili.marvell.com (Postfix) with ESMTP id 08DC83F706A; Wed, 25 Jan 2023 03:31:55 -0800 (PST) From: Rahul Bhansali To: , Nithin Dabilpuram , Kiran Kumar K , Sunil Kumar Kori , Satha Rao CC: , Rahul Bhansali Subject: [PATCH v3 3/4] net/cnxk: restructure for cn10k datapath Date: Wed, 25 Jan 2023 17:01:25 +0530 Message-ID: <20230125113126.2860273-3-rbhansali@marvell.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20230125113126.2860273-1-rbhansali@marvell.com> References: <20221221091549.967801-1-rbhansali@marvell.com> <20230125113126.2860273-1-rbhansali@marvell.com> MIME-Version: 1.0 X-Proofpoint-ORIG-GUID: 2omBrwOWtSti9wHxalx7RAuPQ-UX2NCp X-Proofpoint-GUID: 2omBrwOWtSti9wHxalx7RAuPQ-UX2NCp X-Proofpoint-Virus-Version: vendor=baseguard engine=ICAP:2.0.219,Aquarius:18.0.930,Hydra:6.0.562,FMLib:17.11.122.1 definitions=2023-01-25_06,2023-01-25_01,2022-06-22_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 Restructure for separate cn10k datapath functionality to reduce recompilation time in case of any changes in control path. New cnxk_ethdev_dp.h and cn10k_rxtx.h files are created to have macros, functions as required for datapath with minimal dependency on roc changes. Signed-off-by: Rahul Bhansali --- Changes in v3: Reorder patch in series for compilation fix. Changes in v2: No changes. drivers/net/cnxk/cn10k_ethdev.h | 71 +------- drivers/net/cnxk/cn10k_rx.h | 5 +- drivers/net/cnxk/cn10k_rxtx.h | 116 ++++++++++++ drivers/net/cnxk/cn10k_tx.h | 2 +- drivers/net/cnxk/cnxk_ethdev.h | 157 +--------------- drivers/net/cnxk/cnxk_ethdev_dp.h | 167 ++++++++++++++++++ drivers/net/cnxk/rx/cn10k/rx_0_15.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_0_15_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_0_15_vec.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_0_15_vec_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_112_127.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_112_127_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_112_127_vec.c | 5 +- .../net/cnxk/rx/cn10k/rx_112_127_vec_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_16_31.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_16_31_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_16_31_vec.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_16_31_vec_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_32_47.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_32_47_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_32_47_vec.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_32_47_vec_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_48_63.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_48_63_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_48_63_vec.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_48_63_vec_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_64_79.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_64_79_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_64_79_vec.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_64_79_vec_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_80_95.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_80_95_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_80_95_vec.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_80_95_vec_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_96_111.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_96_111_mseg.c | 5 +- drivers/net/cnxk/rx/cn10k/rx_96_111_vec.c | 5 +- .../net/cnxk/rx/cn10k/rx_96_111_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_0_15.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_112_127.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c | 5 +- .../net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_16_31.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_32_47.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_48_63.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_64_79.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_80_95.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_96_111.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c | 5 +- drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c | 5 +- .../net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c | 5 +- 70 files changed, 545 insertions(+), 293 deletions(-) create mode 100644 drivers/net/cnxk/cn10k_rxtx.h create mode 100644 drivers/net/cnxk/cnxk_ethdev_dp.h -- 2.25.1 diff --git a/drivers/net/cnxk/cn10k_ethdev.h b/drivers/net/cnxk/cn10k_ethdev.h index c843ba9881..55d7f88716 100644 --- a/drivers/net/cnxk/cn10k_ethdev.h +++ b/drivers/net/cnxk/cn10k_ethdev.h @@ -6,52 +6,7 @@ #include #include - -struct cn10k_eth_txq { - uint64_t send_hdr_w0; - int64_t fc_cache_pkts; - uint64_t *fc_mem; - uintptr_t lmt_base; - rte_iova_t io_addr; - uint16_t sqes_per_sqb_log2; - int16_t nb_sqb_bufs_adj; - rte_iova_t cpt_io_addr; - uint64_t sa_base; - uint64_t *cpt_fc; - uint16_t cpt_desc; - int32_t *cpt_fc_sw; - uint64_t lso_tun_fmt; - uint64_t ts_mem; - uint64_t mark_flag : 8; - uint64_t mark_fmt : 48; - struct cnxk_eth_txq_comp tx_compl; -} __plt_cache_aligned; - -struct cn10k_eth_rxq { - uint64_t mbuf_initializer; - uintptr_t desc; - void *lookup_mem; - uintptr_t cq_door; - uint64_t wdata; - int64_t *cq_status; - uint32_t head; - uint32_t qmask; - uint32_t available; - uint16_t data_off; - uint64_t sa_base; - uint64_t lmt_base; - uint64_t meta_aura; - uint16_t rq; - struct cnxk_timesync_info *tstamp; -} __plt_cache_aligned; - -/* Private data in sw rsvd area of struct roc_ot_ipsec_inb_sa */ -struct cn10k_inb_priv_data { - void *userdata; - int reass_dynfield_off; - int reass_dynflag_bit; - struct cnxk_eth_sec_sess *eth_sec; -}; +#include /* Private data in sw rsvd area of struct roc_ot_ipsec_outb_sa */ struct cn10k_outb_priv_data { @@ -64,26 +19,6 @@ struct cn10k_outb_priv_data { uint32_t sa_idx; }; -struct cn10k_sec_sess_priv { - union { - struct { - uint32_t sa_idx; - uint8_t inb_sa : 1; - uint8_t outer_ip_ver : 1; - uint8_t mode : 1; - uint8_t roundup_byte : 5; - uint8_t roundup_len; - uint16_t partial_len : 10; - uint16_t chksum : 2; - uint16_t dec_ttl : 1; - uint16_t nixtx_off : 1; - uint16_t rsvd : 2; - }; - - uint64_t u64; - }; -} __rte_packed; - /* Rx and Tx routines */ void cn10k_eth_set_rx_function(struct rte_eth_dev *eth_dev); void cn10k_eth_set_tx_function(struct rte_eth_dev *eth_dev); @@ -95,8 +30,4 @@ void cn10k_eth_sec_ops_override(void); void cn10k_eth_sec_sso_work_cb(uint64_t *gw, void *args, uint32_t soft_exp_event); -#define LMT_OFF(lmt_addr, lmt_num, offset) \ - (void *)((uintptr_t)(lmt_addr) + \ - ((uint64_t)(lmt_num) << ROC_LMT_LINE_SIZE_LOG2) + (offset)) - #endif /* __CN10K_ETHDEV_H__ */ diff --git a/drivers/net/cnxk/cn10k_rx.h b/drivers/net/cnxk/cn10k_rx.h index 38e82486ed..9fdb5565e9 100644 --- a/drivers/net/cnxk/cn10k_rx.h +++ b/drivers/net/cnxk/cn10k_rx.h @@ -4,10 +4,11 @@ #ifndef __CN10K_RX_H__ #define __CN10K_RX_H__ -#include +#include #include +#include "cn10k_rxtx.h" -#include +#define NSEC_PER_SEC 1000000000L #define NIX_RX_OFFLOAD_NONE (0) #define NIX_RX_OFFLOAD_RSS_F BIT(0) diff --git a/drivers/net/cnxk/cn10k_rxtx.h b/drivers/net/cnxk/cn10k_rxtx.h new file mode 100644 index 0000000000..c256d54307 --- /dev/null +++ b/drivers/net/cnxk/cn10k_rxtx.h @@ -0,0 +1,116 @@ +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright(C) 2022 Marvell. + */ + +#ifndef __CN10K_RXTX_H__ +#define __CN10K_RXTX_H__ + +#include + +/* ROC Constants */ +#include "roc_constants.h" + +/* Platform definition */ +#include "roc_platform.h" + +/* IO */ +#if defined(__aarch64__) +#include "roc_io.h" +#else +#include "roc_io_generic.h" +#endif + +/* HW structure definition */ +#include "hw/cpt.h" +#include "hw/nix.h" +#include "hw/npa.h" +#include "hw/npc.h" +#include "hw/ssow.h" + +#include "roc_ie_ot.h" + +/* NPA */ +#include "roc_npa_dp.h" + +/* SSO */ +#include "roc_sso_dp.h" + +/* CPT */ +#include "roc_cpt.h" + +/* NIX Inline dev */ +#include "roc_nix_inl_dp.h" + +#include "cnxk_ethdev_dp.h" + +struct cn10k_eth_txq { + uint64_t send_hdr_w0; + int64_t fc_cache_pkts; + uint64_t *fc_mem; + uintptr_t lmt_base; + rte_iova_t io_addr; + uint16_t sqes_per_sqb_log2; + int16_t nb_sqb_bufs_adj; + rte_iova_t cpt_io_addr; + uint64_t sa_base; + uint64_t *cpt_fc; + uint16_t cpt_desc; + int32_t *cpt_fc_sw; + uint64_t lso_tun_fmt; + uint64_t ts_mem; + uint64_t mark_flag : 8; + uint64_t mark_fmt : 48; + struct cnxk_eth_txq_comp tx_compl; +} __plt_cache_aligned; + +struct cn10k_eth_rxq { + uint64_t mbuf_initializer; + uintptr_t desc; + void *lookup_mem; + uintptr_t cq_door; + uint64_t wdata; + int64_t *cq_status; + uint32_t head; + uint32_t qmask; + uint32_t available; + uint16_t data_off; + uint64_t sa_base; + uint64_t lmt_base; + uint64_t meta_aura; + uint16_t rq; + struct cnxk_timesync_info *tstamp; +} __plt_cache_aligned; + +/* Private data in sw rsvd area of struct roc_ot_ipsec_inb_sa */ +struct cn10k_inb_priv_data { + void *userdata; + int reass_dynfield_off; + int reass_dynflag_bit; + struct cnxk_eth_sec_sess *eth_sec; +}; + +struct cn10k_sec_sess_priv { + union { + struct { + uint32_t sa_idx; + uint8_t inb_sa : 1; + uint8_t outer_ip_ver : 1; + uint8_t mode : 1; + uint8_t roundup_byte : 5; + uint8_t roundup_len; + uint16_t partial_len : 10; + uint16_t chksum : 2; + uint16_t dec_ttl : 1; + uint16_t nixtx_off : 1; + uint16_t rsvd : 2; + }; + + uint64_t u64; + }; +} __rte_packed; + +#define LMT_OFF(lmt_addr, lmt_num, offset) \ + (void *)((uintptr_t)(lmt_addr) + \ + ((uint64_t)(lmt_num) << ROC_LMT_LINE_SIZE_LOG2) + (offset)) + +#endif /* __CN10K_RXTX_H__ */ diff --git a/drivers/net/cnxk/cn10k_tx.h b/drivers/net/cnxk/cn10k_tx.h index c51de742ad..1c1ce9642a 100644 --- a/drivers/net/cnxk/cn10k_tx.h +++ b/drivers/net/cnxk/cn10k_tx.h @@ -5,8 +5,8 @@ #define __CN10K_TX_H__ #include - #include +#include "cn10k_rxtx.h" #define NIX_TX_OFFLOAD_NONE (0) #define NIX_TX_OFFLOAD_L3_L4_CSUM_F BIT(0) diff --git a/drivers/net/cnxk/cnxk_ethdev.h b/drivers/net/cnxk/cnxk_ethdev.h index ea8c70b8b7..f0eab4244c 100644 --- a/drivers/net/cnxk/cnxk_ethdev.h +++ b/drivers/net/cnxk/cnxk_ethdev.h @@ -22,6 +22,7 @@ #include #include "roc_api.h" +#include #define CNXK_ETH_DEV_PMD_VERSION "1.0" @@ -48,19 +49,6 @@ /* LPB & SPB */ #define CNXK_NIX_NUM_POOLS_MAX 2 -/* If PTP is enabled additional SEND MEM DESC is required which - * takes 2 words, hence max 7 iova address are possible - */ -#if defined(RTE_LIBRTE_IEEE1588) -#define CNXK_NIX_TX_NB_SEG_MAX 7 -#else -#define CNXK_NIX_TX_NB_SEG_MAX 9 -#endif - -#define CNXK_NIX_TX_MSEG_SG_DWORDS \ - ((RTE_ALIGN_MUL_CEIL(CNXK_NIX_TX_NB_SEG_MAX, 3) / 3) + \ - CNXK_NIX_TX_NB_SEG_MAX) - #define CNXK_NIX_RSS_L3_L4_SRC_DST \ (RTE_ETH_RSS_L3_SRC_ONLY | RTE_ETH_RSS_L3_DST_ONLY | \ RTE_ETH_RSS_L4_SRC_ONLY | RTE_ETH_RSS_L4_DST_ONLY) @@ -111,63 +99,14 @@ #define RSS_DMAC_INDEX 5 /* Default mark value used when none is provided. */ -#define CNXK_FLOW_ACTION_FLAG_DEFAULT 0xffff #define CNXK_NIX_MTR_COUNT_MAX 73 /* 64(leaf) + 8(mid) + 1(top) */ /* Default cycle counter mask */ #define CNXK_CYCLECOUNTER_MASK 0xffffffffffffffffULL -#define CNXK_NIX_TIMESYNC_RX_OFFSET 8 - -#define PTYPE_NON_TUNNEL_WIDTH 16 -#define PTYPE_TUNNEL_WIDTH 12 -#define PTYPE_NON_TUNNEL_ARRAY_SZ BIT(PTYPE_NON_TUNNEL_WIDTH) -#define PTYPE_TUNNEL_ARRAY_SZ BIT(PTYPE_TUNNEL_WIDTH) -#define PTYPE_ARRAY_SZ \ - ((PTYPE_NON_TUNNEL_ARRAY_SZ + PTYPE_TUNNEL_ARRAY_SZ) * sizeof(uint16_t)) - -/* NIX_RX_PARSE_S's ERRCODE + ERRLEV (12 bits) */ -#define ERRCODE_ERRLEN_WIDTH 12 -#define ERR_ARRAY_SZ ((BIT(ERRCODE_ERRLEN_WIDTH)) * sizeof(uint32_t)) /* Fastpath lookup */ #define CNXK_NIX_FASTPATH_LOOKUP_MEM "cnxk_nix_fastpath_lookup_mem" -#define CNXK_NIX_UDP_TUN_BITMASK \ - ((1ull << (RTE_MBUF_F_TX_TUNNEL_VXLAN >> 45)) | \ - (1ull << (RTE_MBUF_F_TX_TUNNEL_GENEVE >> 45))) - -/* Subtype from inline outbound error event */ -#define CNXK_ETHDEV_SEC_OUTB_EV_SUB 0xFFUL - -/* SPI will be in 20 bits of tag */ -#define CNXK_ETHDEV_SPI_TAG_MASK 0xFFFFFUL - -#define CNXK_NIX_PFC_CHAN_COUNT 16 - -#define CNXK_TM_MARK_VLAN_DEI BIT_ULL(0) -#define CNXK_TM_MARK_IP_DSCP BIT_ULL(1) -#define CNXK_TM_MARK_IP_ECN BIT_ULL(2) - -#define CNXK_TM_MARK_MASK \ - (CNXK_TM_MARK_VLAN_DEI | CNXK_TM_MARK_IP_DSCP | CNXK_TM_MARK_IP_ECN) - -#define CNXK_TX_MARK_FMT_MASK (0xFFFFFFFFFFFFull) - -struct cnxk_eth_txq_comp { - uintptr_t desc_base; - uintptr_t cq_door; - int64_t *cq_status; - uint64_t wdata; - uint32_t head; - uint32_t qmask; - uint32_t nb_desc_mask; - uint32_t available; - uint32_t sqe_id; - bool ena; - struct rte_mbuf **ptr; - rte_spinlock_t ext_buf_lock; -}; - struct cnxk_fc_cfg { enum rte_eth_fc_mode mode; uint8_t rx_pause; @@ -191,15 +130,6 @@ struct cnxk_eth_qconf { uint8_t valid; }; -struct cnxk_timesync_info { - uint8_t rx_ready; - uint64_t rx_tstamp; - uint64_t rx_tstamp_dynflag; - int tstamp_dynfield_offset; - rte_iova_t tx_tstamp_iova; - uint64_t *tx_tstamp; -} __plt_cache_aligned; - struct cnxk_meter_node { #define MAX_PRV_MTR_NODES 10 TAILQ_ENTRY(cnxk_meter_node) next; @@ -711,89 +641,4 @@ int nix_priority_flow_ctrl_rq_conf(struct rte_eth_dev *eth_dev, uint16_t qid, int nix_priority_flow_ctrl_sq_conf(struct rte_eth_dev *eth_dev, uint16_t qid, uint8_t rx_pause, uint8_t tc); -/* Inlines */ -static __rte_always_inline uint64_t -cnxk_pktmbuf_detach(struct rte_mbuf *m) -{ - struct rte_mempool *mp = m->pool; - uint32_t mbuf_size, buf_len; - struct rte_mbuf *md; - uint16_t priv_size; - uint16_t refcount; - - /* Update refcount of direct mbuf */ - md = rte_mbuf_from_indirect(m); - refcount = rte_mbuf_refcnt_update(md, -1); - - priv_size = rte_pktmbuf_priv_size(mp); - mbuf_size = (uint32_t)(sizeof(struct rte_mbuf) + priv_size); - buf_len = rte_pktmbuf_data_room_size(mp); - - m->priv_size = priv_size; - m->buf_addr = (char *)m + mbuf_size; - rte_mbuf_iova_set(m, rte_mempool_virt2iova(m) + mbuf_size); - m->buf_len = (uint16_t)buf_len; - rte_pktmbuf_reset_headroom(m); - m->data_len = 0; - m->ol_flags = 0; - m->next = NULL; - m->nb_segs = 1; - - /* Now indirect mbuf is safe to free */ - rte_pktmbuf_free(m); - - if (refcount == 0) { - rte_mbuf_refcnt_set(md, 1); - md->data_len = 0; - md->ol_flags = 0; - md->next = NULL; - md->nb_segs = 1; - return 0; - } else { - return 1; - } -} - -static __rte_always_inline uint64_t -cnxk_nix_prefree_seg(struct rte_mbuf *m) -{ - if (likely(rte_mbuf_refcnt_read(m) == 1)) { - if (!RTE_MBUF_DIRECT(m)) - return cnxk_pktmbuf_detach(m); - - m->next = NULL; - m->nb_segs = 1; - return 0; - } else if (rte_mbuf_refcnt_update(m, -1) == 0) { - if (!RTE_MBUF_DIRECT(m)) - return cnxk_pktmbuf_detach(m); - - rte_mbuf_refcnt_set(m, 1); - m->next = NULL; - m->nb_segs = 1; - return 0; - } - - /* Mbuf is having refcount more than 1 so need not to be freed */ - return 1; -} - -static inline rte_mbuf_timestamp_t * -cnxk_nix_timestamp_dynfield(struct rte_mbuf *mbuf, - struct cnxk_timesync_info *info) -{ - return RTE_MBUF_DYNFIELD(mbuf, info->tstamp_dynfield_offset, - rte_mbuf_timestamp_t *); -} - -static __rte_always_inline uintptr_t -cnxk_nix_sa_base_get(uint16_t port, const void *lookup_mem) -{ - uintptr_t sa_base_tbl; - - sa_base_tbl = (uintptr_t)lookup_mem; - sa_base_tbl += PTYPE_ARRAY_SZ + ERR_ARRAY_SZ; - return *((const uintptr_t *)sa_base_tbl + port); -} - #endif /* __CNXK_ETHDEV_H__ */ diff --git a/drivers/net/cnxk/cnxk_ethdev_dp.h b/drivers/net/cnxk/cnxk_ethdev_dp.h new file mode 100644 index 0000000000..a812c78eda --- /dev/null +++ b/drivers/net/cnxk/cnxk_ethdev_dp.h @@ -0,0 +1,167 @@ +/* SPDX-License-Identifier: BSD-3-Clause + * Copyright(C) 2022 Marvell. + */ +#ifndef __CNXK_ETHDEV_DP_H__ +#define __CNXK_ETHDEV_DP_H__ + +#include + +/* If PTP is enabled additional SEND MEM DESC is required which + * takes 2 words, hence max 7 iova address are possible + */ +#if defined(RTE_LIBRTE_IEEE1588) +#define CNXK_NIX_TX_NB_SEG_MAX 7 +#else +#define CNXK_NIX_TX_NB_SEG_MAX 9 +#endif + +#define CNXK_NIX_TX_MSEG_SG_DWORDS \ + ((RTE_ALIGN_MUL_CEIL(CNXK_NIX_TX_NB_SEG_MAX, 3) / 3) + \ + CNXK_NIX_TX_NB_SEG_MAX) + +/* Default mark value used when none is provided. */ +#define CNXK_FLOW_ACTION_FLAG_DEFAULT 0xffff +#define CNXK_NIX_TIMESYNC_RX_OFFSET 8 + +#define PTYPE_NON_TUNNEL_WIDTH 16 +#define PTYPE_TUNNEL_WIDTH 12 +#define PTYPE_NON_TUNNEL_ARRAY_SZ BIT(PTYPE_NON_TUNNEL_WIDTH) +#define PTYPE_TUNNEL_ARRAY_SZ BIT(PTYPE_TUNNEL_WIDTH) +#define PTYPE_ARRAY_SZ \ + ((PTYPE_NON_TUNNEL_ARRAY_SZ + PTYPE_TUNNEL_ARRAY_SZ) * sizeof(uint16_t)) + +/* NIX_RX_PARSE_S's ERRCODE + ERRLEV (12 bits) */ +#define ERRCODE_ERRLEN_WIDTH 12 +#define ERR_ARRAY_SZ ((BIT(ERRCODE_ERRLEN_WIDTH)) * sizeof(uint32_t)) + +#define CNXK_NIX_UDP_TUN_BITMASK \ + ((1ull << (RTE_MBUF_F_TX_TUNNEL_VXLAN >> 45)) | \ + (1ull << (RTE_MBUF_F_TX_TUNNEL_GENEVE >> 45))) + +/* Subtype from inline outbound error event */ +#define CNXK_ETHDEV_SEC_OUTB_EV_SUB 0xFFUL + +/* SPI will be in 20 bits of tag */ +#define CNXK_ETHDEV_SPI_TAG_MASK 0xFFFFFUL + +#define CNXK_NIX_PFC_CHAN_COUNT 16 + +#define CNXK_TM_MARK_VLAN_DEI BIT_ULL(0) +#define CNXK_TM_MARK_IP_DSCP BIT_ULL(1) +#define CNXK_TM_MARK_IP_ECN BIT_ULL(2) + +#define CNXK_TM_MARK_MASK \ + (CNXK_TM_MARK_VLAN_DEI | CNXK_TM_MARK_IP_DSCP | CNXK_TM_MARK_IP_ECN) + +#define CNXK_TX_MARK_FMT_MASK (0xFFFFFFFFFFFFull) + +struct cnxk_eth_txq_comp { + uintptr_t desc_base; + uintptr_t cq_door; + int64_t *cq_status; + uint64_t wdata; + uint32_t head; + uint32_t qmask; + uint32_t nb_desc_mask; + uint32_t available; + uint32_t sqe_id; + bool ena; + struct rte_mbuf **ptr; + rte_spinlock_t ext_buf_lock; +}; + +struct cnxk_timesync_info { + uint8_t rx_ready; + uint64_t rx_tstamp; + uint64_t rx_tstamp_dynflag; + int tstamp_dynfield_offset; + rte_iova_t tx_tstamp_iova; + uint64_t *tx_tstamp; +} __plt_cache_aligned; + +/* Inlines */ +static __rte_always_inline uint64_t +cnxk_pktmbuf_detach(struct rte_mbuf *m) +{ + struct rte_mempool *mp = m->pool; + uint32_t mbuf_size, buf_len; + struct rte_mbuf *md; + uint16_t priv_size; + uint16_t refcount; + + /* Update refcount of direct mbuf */ + md = rte_mbuf_from_indirect(m); + refcount = rte_mbuf_refcnt_update(md, -1); + + priv_size = rte_pktmbuf_priv_size(mp); + mbuf_size = (uint32_t)(sizeof(struct rte_mbuf) + priv_size); + buf_len = rte_pktmbuf_data_room_size(mp); + + m->priv_size = priv_size; + m->buf_addr = (char *)m + mbuf_size; + rte_mbuf_iova_set(m, rte_mempool_virt2iova(m) + mbuf_size); + m->buf_len = (uint16_t)buf_len; + rte_pktmbuf_reset_headroom(m); + m->data_len = 0; + m->ol_flags = 0; + m->next = NULL; + m->nb_segs = 1; + + /* Now indirect mbuf is safe to free */ + rte_pktmbuf_free(m); + + if (refcount == 0) { + rte_mbuf_refcnt_set(md, 1); + md->data_len = 0; + md->ol_flags = 0; + md->next = NULL; + md->nb_segs = 1; + return 0; + } else { + return 1; + } +} + +static __rte_always_inline uint64_t +cnxk_nix_prefree_seg(struct rte_mbuf *m) +{ + if (likely(rte_mbuf_refcnt_read(m) == 1)) { + if (!RTE_MBUF_DIRECT(m)) + return cnxk_pktmbuf_detach(m); + + m->next = NULL; + m->nb_segs = 1; + return 0; + } else if (rte_mbuf_refcnt_update(m, -1) == 0) { + if (!RTE_MBUF_DIRECT(m)) + return cnxk_pktmbuf_detach(m); + + rte_mbuf_refcnt_set(m, 1); + m->next = NULL; + m->nb_segs = 1; + return 0; + } + + /* Mbuf is having refcount more than 1 so need not to be freed */ + return 1; +} + +static inline rte_mbuf_timestamp_t * +cnxk_nix_timestamp_dynfield(struct rte_mbuf *mbuf, + struct cnxk_timesync_info *info) +{ + return RTE_MBUF_DYNFIELD(mbuf, info->tstamp_dynfield_offset, + rte_mbuf_timestamp_t *); +} + +static __rte_always_inline uintptr_t +cnxk_nix_sa_base_get(uint16_t port, const void *lookup_mem) +{ + uintptr_t sa_base_tbl; + + sa_base_tbl = (uintptr_t)lookup_mem; + sa_base_tbl += PTYPE_ARRAY_SZ + ERR_ARRAY_SZ; + return *((const uintptr_t *)sa_base_tbl + port); +} + +#endif /* __CNXK_ETHDEV_DP_H__ */ diff --git a/drivers/net/cnxk/rx/cn10k/rx_0_15.c b/drivers/net/cnxk/rx/cn10k/rx_0_15.c index 5087bad1b0..4447f4760b 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_0_15.c +++ b/drivers/net/cnxk/rx/cn10k/rx_0_15.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_0_15_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_0_15_mseg.c index 1db51c0b2b..7fcdc99f6f 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_0_15_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_0_15_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_0_15_vec.c b/drivers/net/cnxk/rx/cn10k/rx_0_15_vec.c index 17a7bbdfe4..c018aff2a7 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_0_15_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_0_15_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_0_15_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_0_15_vec_mseg.c index c795c5a0c3..093885ef67 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_0_15_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_0_15_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/rx/cn10k/rx_112_127.c b/drivers/net/cnxk/rx/cn10k/rx_112_127.c index 3298313c3f..5b060dc499 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_112_127.c +++ b/drivers/net/cnxk/rx/cn10k/rx_112_127.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_112_127_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_112_127_mseg.c index 1c4528436a..af2eb0944a 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_112_127_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_112_127_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_112_127_vec.c b/drivers/net/cnxk/rx/cn10k/rx_112_127_vec.c index 8943cc6ea5..b451d33d59 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_112_127_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_112_127_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_112_127_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_112_127_vec_mseg.c index cd16537dd7..961cf7547b 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_112_127_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_112_127_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/rx/cn10k/rx_16_31.c b/drivers/net/cnxk/rx/cn10k/rx_16_31.c index c65e170712..59ca07f619 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_16_31.c +++ b/drivers/net/cnxk/rx/cn10k/rx_16_31.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_16_31_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_16_31_mseg.c index 8f2c9d1732..4a11d3907c 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_16_31_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_16_31_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_16_31_vec.c b/drivers/net/cnxk/rx/cn10k/rx_16_31_vec.c index 809d288fdb..d2f5304ff3 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_16_31_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_16_31_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_16_31_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_16_31_vec_mseg.c index d30608a0fd..274665fdc7 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_16_31_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_16_31_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/rx/cn10k/rx_32_47.c b/drivers/net/cnxk/rx/cn10k/rx_32_47.c index fdc0fdabaa..e6458bef89 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_32_47.c +++ b/drivers/net/cnxk/rx/cn10k/rx_32_47.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_32_47_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_32_47_mseg.c index 9837bc6a66..0b2ce03b65 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_32_47_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_32_47_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_32_47_vec.c b/drivers/net/cnxk/rx/cn10k/rx_32_47_vec.c index 27436ca35d..fd7b43840b 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_32_47_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_32_47_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_32_47_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_32_47_vec_mseg.c index f324de9f8c..d1527224e4 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_32_47_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_32_47_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/rx/cn10k/rx_48_63.c b/drivers/net/cnxk/rx/cn10k/rx_48_63.c index 73fc2f9e90..610d14a25f 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_48_63.c +++ b/drivers/net/cnxk/rx/cn10k/rx_48_63.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_48_63_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_48_63_mseg.c index 51d31a734a..6d709cdf8b 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_48_63_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_48_63_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_48_63_vec.c b/drivers/net/cnxk/rx/cn10k/rx_48_63_vec.c index a9b7627c96..4006550699 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_48_63_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_48_63_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_48_63_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_48_63_vec_mseg.c index 0088acbdce..61158ad0ca 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_48_63_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_48_63_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/rx/cn10k/rx_64_79.c b/drivers/net/cnxk/rx/cn10k/rx_64_79.c index fc65d8ec23..e374c9fbc0 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_64_79.c +++ b/drivers/net/cnxk/rx/cn10k/rx_64_79.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_64_79_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_64_79_mseg.c index 5670f6a6ab..e3d06aaf27 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_64_79_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_64_79_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_64_79_vec.c b/drivers/net/cnxk/rx/cn10k/rx_64_79_vec.c index 1911feff5c..6045c227fb 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_64_79_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_64_79_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_64_79_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_64_79_vec_mseg.c index 8302f415a1..6101be67b9 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_64_79_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_64_79_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/rx/cn10k/rx_80_95.c b/drivers/net/cnxk/rx/cn10k/rx_80_95.c index 5d507a4f72..4b8984ccb9 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_80_95.c +++ b/drivers/net/cnxk/rx/cn10k/rx_80_95.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_80_95_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_80_95_mseg.c index 91456ecad5..cb271c0afc 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_80_95_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_80_95_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_80_95_vec.c b/drivers/net/cnxk/rx/cn10k/rx_80_95_vec.c index 407f7ca076..146cea33da 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_80_95_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_80_95_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_80_95_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_80_95_vec_mseg.c index c2d4a3df63..bc51fc6c9c 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_80_95_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_80_95_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/rx/cn10k/rx_96_111.c b/drivers/net/cnxk/rx/cn10k/rx_96_111.c index 1075734360..09f6efb95d 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_96_111.c +++ b/drivers/net/cnxk/rx/cn10k/rx_96_111.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_##name, flags) \ NIX_RX_RECV(cn10k_nix_recv_pkts_reas_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_96_111_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_96_111_mseg.c index 4040a3ec1f..085e2787ac 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_96_111_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_96_111_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_mseg_##name, flags) \ NIX_RX_RECV_MSEG(cn10k_nix_recv_pkts_reas_mseg_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_96_111_vec.c b/drivers/net/cnxk/rx/cn10k/rx_96_111_vec.c index 24e888dc86..0f4e117baf 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_96_111_vec.c +++ b/drivers/net/cnxk/rx/cn10k/rx_96_111_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_vec_##name, flags) \ NIX_RX_RECV_VEC(cn10k_nix_recv_pkts_reas_vec_##name, flags | NIX_RX_REAS_F) diff --git a/drivers/net/cnxk/rx/cn10k/rx_96_111_vec_mseg.c b/drivers/net/cnxk/rx/cn10k/rx_96_111_vec_mseg.c index 8ff7e419bb..37f7f61341 100644 --- a/drivers/net/cnxk/rx/cn10k/rx_96_111_vec_mseg.c +++ b/drivers/net/cnxk/rx/cn10k/rx_96_111_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_rx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define R(name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_vec_mseg_##name, flags) \ NIX_RX_RECV_VEC_MSEG(cn10k_nix_recv_pkts_reas_vec_mseg_##name, \ diff --git a/drivers/net/cnxk/tx/cn10k/tx_0_15.c b/drivers/net/cnxk/tx/cn10k/tx_0_15.c index d2f6288878..c4495baea5 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_0_15.c +++ b/drivers/net/cnxk/tx/cn10k/tx_0_15.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_0_15 diff --git a/drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c index 17f53f4008..ce7f59b24b 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c b/drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c index 4d3936ddcc..dffc40974e 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c index 032d2190c1..d0e8042815 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_112_127.c b/drivers/net/cnxk/tx/cn10k/tx_112_127.c index 0cf2d3553e..81fd139fc6 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_112_127.c +++ b/drivers/net/cnxk/tx/cn10k/tx_112_127.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_112_127 diff --git a/drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c index 08b7809af6..9129c5c330 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c b/drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c index 9e2f1d7db3..df6e9ed680 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c index 9797de238f..c144e71232 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_16_31.c b/drivers/net/cnxk/tx/cn10k/tx_16_31.c index bf243c6855..41e77c48e7 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_16_31.c +++ b/drivers/net/cnxk/tx/cn10k/tx_16_31.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_16_31 diff --git a/drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c index dde27f0944..527b009c4b 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c b/drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c index cae2ab8af5..36eca00f1d 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c index 0b5d9e47d1..8bd3311de6 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_32_47.c b/drivers/net/cnxk/tx/cn10k/tx_32_47.c index dde45c024e..7dcd9a4fb7 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_32_47.c +++ b/drivers/net/cnxk/tx/cn10k/tx_32_47.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_32_47 diff --git a/drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c index 257c392f27..987667951f 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c b/drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c index 7a833022f7..e5edce2f0c 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c index c66edbc211..e9f940ddb1 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_48_63.c b/drivers/net/cnxk/tx/cn10k/tx_48_63.c index a42bac3fca..7bc735bd80 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_48_63.c +++ b/drivers/net/cnxk/tx/cn10k/tx_48_63.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_48_63 diff --git a/drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c index 9aece25db7..6a1d0a3e69 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c b/drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c index 1b854e5d87..95e5a1663b 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c index 18389c309f..d46587b5b0 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_64_79.c b/drivers/net/cnxk/tx/cn10k/tx_64_79.c index 9638ec04e8..0819c770c0 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_64_79.c +++ b/drivers/net/cnxk/tx/cn10k/tx_64_79.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_64_79 diff --git a/drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c index e002c72d58..45af7e8687 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c b/drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c index 762ff4da49..8247564779 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c index 794cbe8650..58426c976a 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_80_95.c b/drivers/net/cnxk/tx/cn10k/tx_80_95.c index a4cdf3bb18..d690633724 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_80_95.c +++ b/drivers/net/cnxk/tx/cn10k/tx_80_95.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_80_95 diff --git a/drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c index 114e90b1f9..5b01eded11 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c b/drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c index c9bb93b4c6..0f6545a33e 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c index c0c7c02a27..ad1f0ce4df 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111.c b/drivers/net/cnxk/tx/cn10k/tx_96_111.c index 3244322164..2688e502e2 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_96_111.c +++ b/drivers/net/cnxk/tx/cn10k/tx_96_111.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags) NIX_TX_FASTPATH_MODES_96_111 diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c index cc8182da2d..c18b4ba7da 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c index 422d2e4e1c..94ffcb74a8 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c +++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags) diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c index dbefae02e0..ad1d124968 100644 --- a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c +++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c @@ -2,9 +2,12 @@ * Copyright(C) 2022 Marvell. */ -#include "cn10k_ethdev.h" #include "cn10k_tx.h" +#ifdef _ROC_API_H_ +#error "roc_api.h is included" +#endif + #define T(name, sz, flags) \ NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)