aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPetri Savolainen <petri.savolainen@linaro.org>2018-02-22 14:53:29 +0200
committerMaxim Uvarov <maxim.uvarov@linaro.org>2018-02-26 23:06:57 +0300
commit4ed64972ef6e08588592930b32e8a11da45297f5 (patch)
treea30f03b2d8507505bf694f2ff9ec79a352988b30
parent6d634f6a0707b068d6dcaf761bf0b918be3871db (diff)
api: packet: add combined packet data and seg len
Packet data pointer and segment length used often. Combine two calls into one call. One call performs better in ABI compatible mode than two calls. Signed-off-by: Petri Savolainen <petri.savolainen@linaro.org> Reviewed-by: Dmitry Eremin-Solenikov <dmitry.ereminsolenikov@linaro.org> Reviewed-by: Bill Fischofer <bill.fischofer@linaro.org> Reviewed-by: Balasubramanian Manoharan <bala.manoharan@linaro.org> Signed-off-by: Maxim Uvarov <maxim.uvarov@linaro.org>
-rw-r--r--include/odp/api/spec/packet.h16
1 files changed, 16 insertions, 0 deletions
diff --git a/include/odp/api/spec/packet.h b/include/odp/api/spec/packet.h
index 746f6fbf7..e1f2f2218 100644
--- a/include/odp/api/spec/packet.h
+++ b/include/odp/api/spec/packet.h
@@ -440,6 +440,22 @@ void *odp_packet_data(odp_packet_t pkt);
uint32_t odp_packet_seg_len(odp_packet_t pkt);
/**
+ * Packet data pointer with segment length
+ *
+ * Returns both data pointer and number of data bytes (in the segment)
+ * following it. This is equivalent to calling odp_packet_data() and
+ * odp_packet_seg_len().
+ *
+ * @param pkt Packet handle
+ * @param[out] seg_len Pointer to output segment length
+ *
+ * @return Pointer to the packet data
+ *
+ * @see odp_packet_data(), odp_packet_seg_len()
+ */
+void *odp_packet_data_seg_len(odp_packet_t pkt, uint32_t *seg_len);
+
+/**
* Packet data length
*
* Returns total data length over all packet segments. This equals the sum of