aboutsummaryrefslogtreecommitdiff
path: root/platform/linux-dpdk/include/odp/api
diff options
context:
space:
mode:
Diffstat (limited to 'platform/linux-dpdk/include/odp/api')
-rw-r--r--platform/linux-dpdk/include/odp/api/plat/buffer_inlines.h17
-rw-r--r--platform/linux-dpdk/include/odp/api/plat/event_inline_types.h2
l---------platform/linux-dpdk/include/odp/api/plat/ipsec_inlines.h1
-rw-r--r--platform/linux-dpdk/include/odp/api/plat/packet_flag_inlines.h2
-rw-r--r--platform/linux-dpdk/include/odp/api/plat/packet_inline_types.h3
-rw-r--r--platform/linux-dpdk/include/odp/api/plat/packet_inlines.h4
-rw-r--r--platform/linux-dpdk/include/odp/api/plat/timer_inline_types.h2
-rw-r--r--platform/linux-dpdk/include/odp/api/plat/timer_inlines.h2
8 files changed, 22 insertions, 11 deletions
diff --git a/platform/linux-dpdk/include/odp/api/plat/buffer_inlines.h b/platform/linux-dpdk/include/odp/api/plat/buffer_inlines.h
index 3aa399399..6265914b4 100644
--- a/platform/linux-dpdk/include/odp/api/plat/buffer_inlines.h
+++ b/platform/linux-dpdk/include/odp/api/plat/buffer_inlines.h
@@ -29,14 +29,13 @@
/** @cond _ODP_HIDE_FROM_DOXYGEN_ */
-extern const _odp_event_inline_offset_t _odp_event_inline_offset;
-extern const _odp_buffer_inline_offset_t _odp_buffer_inline_offset;
-
#ifndef _ODP_NO_INLINE
/* Inline functions by default */
#define _ODP_INLINE static inline
#define odp_buffer_from_event __odp_buffer_from_event
+ #define odp_buffer_from_event_multi __odp_buffer_from_event_multi
#define odp_buffer_to_event __odp_buffer_to_event
+ #define odp_buffer_to_event_multi __odp_buffer_to_event_multi
#define odp_buffer_addr __odp_buffer_addr
#define odp_buffer_size __odp_buffer_size
#define odp_buffer_pool __odp_buffer_pool
@@ -55,11 +54,23 @@ _ODP_INLINE odp_buffer_t odp_buffer_from_event(odp_event_t ev)
return (odp_buffer_t)ev;
}
+_ODP_INLINE void odp_buffer_from_event_multi(odp_buffer_t buf[], const odp_event_t ev[], int num)
+{
+ for (int i = 0; i < num; i++)
+ buf[i] = odp_buffer_from_event(ev[i]);
+}
+
_ODP_INLINE odp_event_t odp_buffer_to_event(odp_buffer_t buf)
{
return (odp_event_t)buf;
}
+_ODP_INLINE void odp_buffer_to_event_multi(const odp_buffer_t buf[], odp_event_t ev[], int num)
+{
+ for (int i = 0; i < num; i++)
+ ev[i] = odp_buffer_to_event(buf[i]);
+}
+
_ODP_INLINE void *odp_buffer_addr(odp_buffer_t buf)
{
return _odp_event_hdr_field(buf, void *, base_data);
diff --git a/platform/linux-dpdk/include/odp/api/plat/event_inline_types.h b/platform/linux-dpdk/include/odp/api/plat/event_inline_types.h
index caa18fc93..ee5490ff1 100644
--- a/platform/linux-dpdk/include/odp/api/plat/event_inline_types.h
+++ b/platform/linux-dpdk/include/odp/api/plat/event_inline_types.h
@@ -34,6 +34,8 @@ typedef struct _odp_event_inline_offset_t {
} _odp_event_inline_offset_t;
+extern const _odp_event_inline_offset_t _odp_event_inline_offset;
+
/** @endcond */
#ifdef __cplusplus
diff --git a/platform/linux-dpdk/include/odp/api/plat/ipsec_inlines.h b/platform/linux-dpdk/include/odp/api/plat/ipsec_inlines.h
new file mode 120000
index 000000000..72c865d7d
--- /dev/null
+++ b/platform/linux-dpdk/include/odp/api/plat/ipsec_inlines.h
@@ -0,0 +1 @@
+../../../../../linux-generic/include/odp/api/plat/ipsec_inlines.h \ No newline at end of file
diff --git a/platform/linux-dpdk/include/odp/api/plat/packet_flag_inlines.h b/platform/linux-dpdk/include/odp/api/plat/packet_flag_inlines.h
index 7482fca93..b6876e6d7 100644
--- a/platform/linux-dpdk/include/odp/api/plat/packet_flag_inlines.h
+++ b/platform/linux-dpdk/include/odp/api/plat/packet_flag_inlines.h
@@ -22,8 +22,6 @@ extern "C" {
/** @cond _ODP_HIDE_FROM_DOXYGEN_ */
-extern const _odp_packet_inline_offset_t _odp_packet_inline;
-
static inline uint64_t _odp_packet_input_flags(odp_packet_t pkt)
{
return _odp_pkt_get(pkt, uint64_t, input_flags);
diff --git a/platform/linux-dpdk/include/odp/api/plat/packet_inline_types.h b/platform/linux-dpdk/include/odp/api/plat/packet_inline_types.h
index 4bf00dac4..9a72a70ef 100644
--- a/platform/linux-dpdk/include/odp/api/plat/packet_inline_types.h
+++ b/platform/linux-dpdk/include/odp/api/plat/packet_inline_types.h
@@ -43,6 +43,7 @@ typedef struct _odp_packet_inline_offset_t {
uint16_t flags;
uint16_t subtype;
uint16_t cls_mark;
+ uint16_t ipsec_ctx;
uint16_t buf_addr;
uint16_t data;
uint16_t pkt_len;
@@ -55,6 +56,8 @@ typedef struct _odp_packet_inline_offset_t {
} _odp_packet_inline_offset_t;
+extern const _odp_packet_inline_offset_t _odp_packet_inline;
+
/* Packet input & protocol flags */
typedef union {
/* All input flags */
diff --git a/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h b/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h
index 76559ba86..4347afb88 100644
--- a/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h
+++ b/platform/linux-dpdk/include/odp/api/plat/packet_inlines.h
@@ -130,10 +130,6 @@ extern "C" {
#define _ODP_INLINE
#endif
-extern const _odp_packet_inline_offset_t _odp_packet_inline;
-
-extern const _odp_pool_inline_offset_t _odp_pool_inline;
-
_ODP_INLINE void *odp_packet_offset(odp_packet_t pkt, uint32_t offset,
uint32_t *len, odp_packet_seg_t *seg)
{
diff --git a/platform/linux-dpdk/include/odp/api/plat/timer_inline_types.h b/platform/linux-dpdk/include/odp/api/plat/timer_inline_types.h
index ec6804c72..330cbe4ce 100644
--- a/platform/linux-dpdk/include/odp/api/plat/timer_inline_types.h
+++ b/platform/linux-dpdk/include/odp/api/plat/timer_inline_types.h
@@ -29,6 +29,8 @@ typedef struct _odp_timeout_inline_offset_t {
} _odp_timeout_inline_offset_t;
+extern const _odp_timeout_inline_offset_t _odp_timeout_inline_offset;
+
/** @endcond */
#ifdef __cplusplus
diff --git a/platform/linux-dpdk/include/odp/api/plat/timer_inlines.h b/platform/linux-dpdk/include/odp/api/plat/timer_inlines.h
index f8ff5c938..357d4df06 100644
--- a/platform/linux-dpdk/include/odp/api/plat/timer_inlines.h
+++ b/platform/linux-dpdk/include/odp/api/plat/timer_inlines.h
@@ -17,8 +17,6 @@
/** @cond _ODP_HIDE_FROM_DOXYGEN_ */
-extern const _odp_timeout_inline_offset_t _odp_timeout_inline_offset;
-
#ifndef _ODP_NO_INLINE
/* Inline functions by default */
#define _ODP_INLINE static inline