@@ -97,6 +97,14 @@ typedef struct odp_pool_capability_t {
* packet input and user allocated packets.*/
uint32_t min_headroom;
+ /** Maximum packet level headroom length in bytes
+ *
+ * This is the maximum value for packet pool headroom that
+ * can be configured. This value could be rounded up by the
+ * implimenation and it applies to both ODP packet input and
+ * user allocated packets.*/
+ uint32_t max_headroom;
+
/** Minimum packet level tailroom length in bytes
*
* The minimum number of tailroom bytes that newly created
@@ -214,6 +222,18 @@ typedef struct odp_pool_param_t {
defined by pool capability pkt.max_uarea_size.
Specify as 0 if no user area is needed. */
uint32_t uarea_size;
+
+ /** Minimum Headroom size in bytes. Minimum number of
+ bytes of space preceding packet data to reserve for
+ use as headroom. Each newly allocated packet from
+ the pool must have at least this much headroom.
+ Must not exceed the implementation defined
+ 'max_headroom' in odp_pool_capability().
+ @note if application does not required headroom it
+ may set min_headroom to zero and implementation may
+ set headroom as zero or roundup to minimum headroom
+ possible in the platform. */
+ uint32_t min_headroom;
} pkt;
/** Parameters for timeout pools */