[v2,04/11] mempool/cnxk: register lf init/fini callbacks
Checks
Commit Message
Register the CNXk mempool lf init/fini callbacks which
will set the appropriate mempool ops to be used according
to the platform.
Signed-off-by: Ashwin Sekhar T K <asekhar@marvell.com>
---
drivers/mempool/cnxk/cnxk_mempool_ops.c | 21 +++++++++++++++++++++
1 file changed, 21 insertions(+)
@@ -2,6 +2,7 @@
* Copyright(C) 2021 Marvell.
*/
+#include <rte_mbuf_pool_ops.h>
#include <rte_mempool.h>
#include "roc_api.h"
@@ -169,3 +170,23 @@ cnxk_mempool_populate(struct rte_mempool *mp, unsigned int max_objs,
mp, RTE_MEMPOOL_POPULATE_F_ALIGN_OBJ, max_objs, vaddr, iova,
len, obj_cb, obj_cb_arg);
}
+
+static int
+cnxk_mempool_lf_init(void)
+{
+ if (roc_model_is_cn10k() || roc_model_is_cn9k())
+ rte_mbuf_set_platform_mempool_ops("cnxk_mempool_ops");
+
+ return 0;
+}
+
+static void
+cnxk_mempool_lf_fini(void)
+{
+}
+
+RTE_INIT(cnxk_mempool_ops_init)
+{
+ roc_npa_lf_init_cb_register(cnxk_mempool_lf_init);
+ roc_npa_lf_fini_cb_register(cnxk_mempool_lf_fini);
+}