aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatias Elo <matias.elo@nokia.com>2020-09-29 16:21:30 +0300
committerPetri Savolainen <petri.savolainen@nokia.com>2020-11-19 09:49:08 +0200
commit41f0150ee9181e6980256ad336407431883854cc (patch)
tree23d4c8eef2758b965d778d337cae3fe4813af8c4
parentdf2d73cc09bdc9467221ab25f54bf8c0dd69f65d (diff)
linux-gen: packet_vector: implement event conversion functions
Implement odp_packet_vector_from_event() and odp_packet_vector_to_event() event conversion API functions. Signed-off-by: Matias Elo <matias.elo@nokia.com> Reviewed-by: Petri Savolainen <petri.savolainen@nokia.com>
-rw-r--r--platform/linux-generic/Makefile.am1
-rw-r--r--platform/linux-generic/include-abi/odp/api/abi/packet.h1
-rw-r--r--platform/linux-generic/include/odp/api/plat/packet_vector_inlines.h44
-rw-r--r--platform/linux-generic/odp_packet_api.c1
4 files changed, 47 insertions, 0 deletions
diff --git a/platform/linux-generic/Makefile.am b/platform/linux-generic/Makefile.am
index bd4a644f2..e3bb48c15 100644
--- a/platform/linux-generic/Makefile.am
+++ b/platform/linux-generic/Makefile.am
@@ -36,6 +36,7 @@ odpapiplatinclude_HEADERS = \
include/odp/api/plat/packet_flag_inlines.h \
include/odp/api/plat/packet_inline_types.h \
include/odp/api/plat/packet_inlines.h \
+ include/odp/api/plat/packet_vector_inlines.h \
include/odp/api/plat/pktio_inlines.h \
include/odp/api/plat/pool_inline_types.h \
include/odp/api/plat/queue_inlines.h \
diff --git a/platform/linux-generic/include-abi/odp/api/abi/packet.h b/platform/linux-generic/include-abi/odp/api/abi/packet.h
index 602222cd6..76ec97dc7 100644
--- a/platform/linux-generic/include-abi/odp/api/abi/packet.h
+++ b/platform/linux-generic/include-abi/odp/api/abi/packet.h
@@ -123,6 +123,7 @@ typedef struct odp_packet_parse_result_flag_t {
} odp_packet_parse_result_flag_t;
#include <odp/api/plat/packet_inlines.h>
+#include <odp/api/plat/packet_vector_inlines.h>
/**
* @}
diff --git a/platform/linux-generic/include/odp/api/plat/packet_vector_inlines.h b/platform/linux-generic/include/odp/api/plat/packet_vector_inlines.h
new file mode 100644
index 000000000..58159a54c
--- /dev/null
+++ b/platform/linux-generic/include/odp/api/plat/packet_vector_inlines.h
@@ -0,0 +1,44 @@
+/* Copyright (c) 2020, Nokia
+ *
+ * All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+/**
+ * @file
+ *
+ * Packet vector inline functions
+ */
+
+#ifndef _ODP_PLAT_PACKET_VECTOR_INLINES_H_
+#define _ODP_PLAT_PACKET_VECTOR_INLINES_H_
+
+#include <odp/api/abi/event.h>
+#include <odp/api/abi/packet.h>
+
+/** @cond _ODP_HIDE_FROM_DOXYGEN_ */
+
+#ifndef _ODP_NO_INLINE
+ /* Inline functions by default */
+ #define _ODP_INLINE static inline
+ #define odp_packet_vector_from_event __odp_packet_vector_from_event
+ #define odp_packet_vector_to_event __odp_packet_vector_to_event
+#else
+ #undef _ODP_INLINE
+ #define _ODP_INLINE
+#endif
+
+_ODP_INLINE odp_packet_vector_t odp_packet_vector_from_event(odp_event_t ev)
+{
+ return (odp_packet_vector_t)ev;
+}
+
+_ODP_INLINE odp_event_t odp_packet_vector_to_event(odp_packet_vector_t pktv)
+{
+ return (odp_event_t)pktv;
+}
+
+/** @endcond */
+
+#endif
diff --git a/platform/linux-generic/odp_packet_api.c b/platform/linux-generic/odp_packet_api.c
index 6f81f4ce4..e9be4ca4e 100644
--- a/platform/linux-generic/odp_packet_api.c
+++ b/platform/linux-generic/odp_packet_api.c
@@ -26,3 +26,4 @@
/* Include non-inlined versions of API functions */
#define _ODP_NO_INLINE
#include <odp/api/plat/packet_inlines.h>
+#include <odp/api/plat/packet_vector_inlines.h>