[v3,7/8] net/cnxk: add CN10K segregated Tx functions

Message ID 20220122154821.968-7-pbhagavatula@marvell.com (mailing list archive)
State Accepted, archived
Delegated to: Jerin Jacob
Headers
Series [v3,1/8] net/cnxk: add CN9K segregated Rx functions |

Checks

Context Check Description
ci/checkpatch success coding style OK

Commit Message

Pavan Nikhilesh Bhagavatula Jan. 22, 2022, 3:48 p.m. UTC
  From: Pavan Nikhilesh <pbhagavatula@marvell.com>

Add CN10K segregated Rx and event Tx enqueue template functions,
these help in parallelizing the build.

Signed-off-by: Pavan Nikhilesh <pbhagavatula@marvell.com>
---
 drivers/event/cnxk/tx/cn10k/tx_0_15.c           | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_0_15_seg.c       | 11 +++++++++++
 drivers/event/cnxk/tx/cn10k/tx_112_127.c        | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_112_127_seg.c    | 11 +++++++++++
 drivers/event/cnxk/tx/cn10k/tx_16_31.c          | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_16_31_seg.c      | 11 +++++++++++
 drivers/event/cnxk/tx/cn10k/tx_32_47.c          | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_32_47_seg.c      | 11 +++++++++++
 drivers/event/cnxk/tx/cn10k/tx_48_63.c          | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_48_63_seg.c      | 11 +++++++++++
 drivers/event/cnxk/tx/cn10k/tx_64_79.c          | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_64_79_seg.c      | 11 +++++++++++
 drivers/event/cnxk/tx/cn10k/tx_80_95.c          | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_80_95_seg.c      | 11 +++++++++++
 drivers/event/cnxk/tx/cn10k/tx_96_111.c         | 10 ++++++++++
 drivers/event/cnxk/tx/cn10k/tx_96_111_seg.c     | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_0_15.c             | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c        | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c         | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c    | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_112_127.c          | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c     | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c      | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_16_31.c            | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c       | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c        | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c   | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_32_47.c            | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c       | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c        | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c   | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_48_63.c            | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c       | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c        | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c   | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_64_79.c            | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c       | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c        | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c   | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_80_95.c            | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c       | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c        | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c   | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_96_111.c           | 11 +++++++++++
 drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c      | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c       | 12 ++++++++++++
 drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c  | 12 ++++++++++++
 48 files changed, 544 insertions(+)
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_0_15.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_0_15_seg.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_112_127.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_112_127_seg.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_16_31.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_16_31_seg.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_32_47.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_32_47_seg.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_48_63.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_48_63_seg.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_64_79.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_64_79_seg.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_80_95.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_80_95_seg.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_96_111.c
 create mode 100644 drivers/event/cnxk/tx/cn10k/tx_96_111_seg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_0_15.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_112_127.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_16_31.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_32_47.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_48_63.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_64_79.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_80_95.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_96_111.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c
 create mode 100644 drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c
  

Patch

diff --git a/drivers/event/cnxk/tx/cn10k/tx_0_15.c b/drivers/event/cnxk/tx/cn10k/tx_0_15.c
new file mode 100644
index 0000000000..bae3a62eac
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_0_15.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_0_15
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_0_15_seg.c b/drivers/event/cnxk/tx/cn10k/tx_0_15_seg.c
new file mode 100644
index 0000000000..0ffd0e50f7
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_0_15_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_0_15
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_112_127.c b/drivers/event/cnxk/tx/cn10k/tx_112_127.c
new file mode 100644
index 0000000000..02c9ab1ae1
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_112_127.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_112_127
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_112_127_seg.c b/drivers/event/cnxk/tx/cn10k/tx_112_127_seg.c
new file mode 100644
index 0000000000..b0abd8b328
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_112_127_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_112_127
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_16_31.c b/drivers/event/cnxk/tx/cn10k/tx_16_31.c
new file mode 100644
index 0000000000..cd6b1b56f8
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_16_31.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_16_31
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_16_31_seg.c b/drivers/event/cnxk/tx/cn10k/tx_16_31_seg.c
new file mode 100644
index 0000000000..52cbe5932f
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_16_31_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_16_31
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_32_47.c b/drivers/event/cnxk/tx/cn10k/tx_32_47.c
new file mode 100644
index 0000000000..5dd3aad0f3
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_32_47.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_32_47
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_32_47_seg.c b/drivers/event/cnxk/tx/cn10k/tx_32_47_seg.c
new file mode 100644
index 0000000000..a8e73445ff
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_32_47_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_32_47
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_48_63.c b/drivers/event/cnxk/tx/cn10k/tx_48_63.c
new file mode 100644
index 0000000000..8cd5c663d7
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_48_63.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_48_63
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_48_63_seg.c b/drivers/event/cnxk/tx/cn10k/tx_48_63_seg.c
new file mode 100644
index 0000000000..71efca9478
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_48_63_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_48_63
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_64_79.c b/drivers/event/cnxk/tx/cn10k/tx_64_79.c
new file mode 100644
index 0000000000..36aea254e5
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_64_79.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_64_79
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_64_79_seg.c b/drivers/event/cnxk/tx/cn10k/tx_64_79_seg.c
new file mode 100644
index 0000000000..918f9b6d3b
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_64_79_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_64_79
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_80_95.c b/drivers/event/cnxk/tx/cn10k/tx_80_95.c
new file mode 100644
index 0000000000..e400c1546e
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_80_95.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_80_95
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_80_95_seg.c b/drivers/event/cnxk/tx/cn10k/tx_80_95_seg.c
new file mode 100644
index 0000000000..21a76b59fb
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_80_95_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_80_95
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_96_111.c b/drivers/event/cnxk/tx/cn10k/tx_96_111.c
new file mode 100644
index 0000000000..6679b9aa28
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_96_111.c
@@ -0,0 +1,10 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags) SSO_TX(cn10k_sso_hws_tx_adptr_enq_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_96_111
+#undef T
diff --git a/drivers/event/cnxk/tx/cn10k/tx_96_111_seg.c b/drivers/event/cnxk/tx/cn10k/tx_96_111_seg.c
new file mode 100644
index 0000000000..9430a92fc3
--- /dev/null
+++ b/drivers/event/cnxk/tx/cn10k/tx_96_111_seg.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_worker.h"
+
+#define T(name, sz, flags)                                                     \
+	SSO_TX_SEG(cn10k_sso_hws_tx_adptr_enq_seg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_96_111
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_0_15.c b/drivers/net/cnxk/tx/cn10k/tx_0_15.c
new file mode 100644
index 0000000000..d2f6288878
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_0_15.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_0_15
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c
new file mode 100644
index 0000000000..17f53f4008
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_0_15_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_0_15
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c b/drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c
new file mode 100644
index 0000000000..4d3936ddcc
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_0_15_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_0_15
+#undef T
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
new file mode 100644
index 0000000000..032d2190c1
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_0_15_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_0_15
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_112_127.c b/drivers/net/cnxk/tx/cn10k/tx_112_127.c
new file mode 100644
index 0000000000..0cf2d3553e
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_112_127.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_112_127
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c
new file mode 100644
index 0000000000..08b7809af6
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_112_127_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_112_127
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c b/drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c
new file mode 100644
index 0000000000..9e2f1d7db3
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_112_127_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_112_127
+#undef T
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
new file mode 100644
index 0000000000..9797de238f
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_112_127_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_112_127
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_16_31.c b/drivers/net/cnxk/tx/cn10k/tx_16_31.c
new file mode 100644
index 0000000000..bf243c6855
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_16_31.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_16_31
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c
new file mode 100644
index 0000000000..dde27f0944
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_16_31_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_16_31
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c b/drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c
new file mode 100644
index 0000000000..cae2ab8af5
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_16_31_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_16_31
+#undef T
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
new file mode 100644
index 0000000000..0b5d9e47d1
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_16_31_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_16_31
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_32_47.c b/drivers/net/cnxk/tx/cn10k/tx_32_47.c
new file mode 100644
index 0000000000..dde45c024e
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_32_47.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_32_47
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c
new file mode 100644
index 0000000000..257c392f27
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_32_47_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_32_47
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c b/drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c
new file mode 100644
index 0000000000..7a833022f7
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_32_47_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_32_47
+#undef T
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
new file mode 100644
index 0000000000..c66edbc211
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_32_47_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_32_47
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_48_63.c b/drivers/net/cnxk/tx/cn10k/tx_48_63.c
new file mode 100644
index 0000000000..a42bac3fca
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_48_63.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_48_63
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c
new file mode 100644
index 0000000000..9aece25db7
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_48_63_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_48_63
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c b/drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c
new file mode 100644
index 0000000000..1b854e5d87
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_48_63_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_48_63
+#undef T
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
new file mode 100644
index 0000000000..18389c309f
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_48_63_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_48_63
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_64_79.c b/drivers/net/cnxk/tx/cn10k/tx_64_79.c
new file mode 100644
index 0000000000..9638ec04e8
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_64_79.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_64_79
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c
new file mode 100644
index 0000000000..e002c72d58
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_64_79_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_64_79
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c b/drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c
new file mode 100644
index 0000000000..762ff4da49
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_64_79_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_64_79
+#undef T
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
new file mode 100644
index 0000000000..794cbe8650
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_64_79_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_64_79
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_80_95.c b/drivers/net/cnxk/tx/cn10k/tx_80_95.c
new file mode 100644
index 0000000000..a4cdf3bb18
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_80_95.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_80_95
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c
new file mode 100644
index 0000000000..114e90b1f9
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_80_95_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_80_95
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c b/drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c
new file mode 100644
index 0000000000..c9bb93b4c6
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_80_95_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_80_95
+#undef T
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
new file mode 100644
index 0000000000..c0c7c02a27
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_80_95_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_80_95
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111.c b/drivers/net/cnxk/tx/cn10k/tx_96_111.c
new file mode 100644
index 0000000000..3244322164
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_96_111.c
@@ -0,0 +1,11 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags) NIX_TX_XMIT(cn10k_nix_xmit_pkts_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_96_111
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c b/drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c
new file mode 100644
index 0000000000..cc8182da2d
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_MSEG(cn10k_nix_xmit_pkts_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_96_111
+#undef T
diff --git a/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c
new file mode 100644
index 0000000000..422d2e4e1c
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC(cn10k_nix_xmit_pkts_vec_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_96_111
+#undef T
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
new file mode 100644
index 0000000000..dbefae02e0
--- /dev/null
+++ b/drivers/net/cnxk/tx/cn10k/tx_96_111_vec_mseg.c
@@ -0,0 +1,12 @@ 
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(C) 2022 Marvell.
+ */
+
+#include "cn10k_ethdev.h"
+#include "cn10k_tx.h"
+
+#define T(name, sz, flags)                                                     \
+	NIX_TX_XMIT_VEC_MSEG(cn10k_nix_xmit_pkts_vec_mseg_##name, sz, flags)
+
+NIX_TX_FASTPATH_MODES_96_111
+#undef T