diff options
author | Matias Elo <matias.elo@nokia.com> | 2020-09-29 16:21:30 +0300 |
---|---|---|
committer | Petri Savolainen <petri.savolainen@nokia.com> | 2020-11-19 09:49:08 +0200 |
commit | 41f0150ee9181e6980256ad336407431883854cc (patch) | |
tree | 23d4c8eef2758b965d778d337cae3fe4813af8c4 | |
parent | df2d73cc09bdc9467221ab25f54bf8c0dd69f65d (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>
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> |