diff mbox

[API-NEXT,2/6] api: pool: split odp_pool_params to separate include file

Message ID 1435234172-2015-2-git-send-email-bill.fischofer@linaro.org
State New
Headers show

Commit Message

Bill Fischofer June 25, 2015, 12:09 p.m. UTC
Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
---
 include/odp/api/pool.h       | 57 --------------------------
 include/odp/api/pool_param.h | 95 ++++++++++++++++++++++++++++++++++++++++++++
 2 files changed, 95 insertions(+), 57 deletions(-)
 create mode 100644 include/odp/api/pool_param.h

Comments

Bill Fischofer June 30, 2015, 12:12 p.m. UTC | #1
It's required to inline the odp_pool_param_init() function.  But if we
don't need to inline that function then it can remain unsplit.

On Tue, Jun 30, 2015 at 6:54 AM, Savolainen, Petri (Nokia - FI/Espoo) <
petri.savolainen@nokia.com> wrote:

> I think it's better to maintain the params type in pool.h, next to
> odp_pool_create() which needs it. If motivation to move it comes from
> implementation convenience to extend the type with hidden fields, etc ... I
> think it's better to leave it for implementation to split it.
>
> So, new file not needed.
>
> -Petri
>
>
>
> > -----Original Message-----
> > From: lng-odp [mailto:lng-odp-bounces@lists.linaro.org] On Behalf Of ext
> > Bill Fischofer
> > Sent: Thursday, June 25, 2015 3:09 PM
> > To: lng-odp@lists.linaro.org
> > Subject: [lng-odp] [API-NEXT PATCH 2/6] api: pool: split odp_pool_params
> > to separate include file
> >
> > Signed-off-by: Bill Fischofer <bill.fischofer@linaro.org>
> > ---
> >  include/odp/api/pool.h       | 57 --------------------------
> >  include/odp/api/pool_param.h | 95
> > ++++++++++++++++++++++++++++++++++++++++++++
> >  2 files changed, 95 insertions(+), 57 deletions(-)
> >  create mode 100644 include/odp/api/pool_param.h
> >
> > diff --git a/include/odp/api/pool.h b/include/odp/api/pool.h
> > index 0bcfb98..b95f40d 100644
> > --- a/include/odp/api/pool.h
> > +++ b/include/odp/api/pool.h
> > @@ -41,63 +41,6 @@ extern "C" {
> >  #define ODP_POOL_NAME_LEN  32
> >
> >  /**
> > - * Pool parameters
> > - * Used to communicate pool creation options.
> > - */
> > -typedef struct odp_pool_param_t {
> > -     /** Pool type */
> > -     int type;
> > -
> > -     union {
> > -             struct {
> > -                     /** Number of buffers in the pool */
> > -                     uint32_t num;
> > -
> > -                     /** Buffer size in bytes. The maximum number of
> bytes
> > -                         application will store in each buffer. */
> > -                     uint32_t size;
> > -
> > -                     /** Minimum buffer alignment in bytes. Valid
> values are
> > -                         powers of two. Use 0 for default alignment.
> > -                         Default will always be a multiple of 8. */
> > -                     uint32_t align;
> > -             } buf;
> > -             struct {
> > -                     /** The number of packets that the pool must
> provide
> > -                         that are packet length 'len' bytes or smaller.
> */
> > -                     uint32_t num;
> > -
> > -                     /** Minimum packet length that the pool must
> provide
> > -                         'num' packets. The number of packets may be
> less
> > -                         than 'num' when packets are larger than 'len'.
> > -                         Use 0 for default. */
> > -                     uint32_t len;
> > -
> > -                     /** Minimum number of packet data bytes that are
> stored
> > -                         in the first segment of a packet. The maximum
> value
> > -                         is defined by ODP_CONFIG_PACKET_SEG_LEN_MAX.
> > -                         Use 0 for default. */
> > -                     uint32_t seg_len;
> > -
> > -                     /** User area size in bytes. Specify as 0 if no
> user
> > -                         area is needed. */
> > -                     uint32_t uarea_size;
> > -             } pkt;
> > -             struct {
> > -                     /** Number of timeouts in the pool */
> > -                     uint32_t num;
> > -             } tmo;
> > -     };
> > -} odp_pool_param_t;
> > -
> > -/** Packet pool*/
> > -#define ODP_POOL_PACKET       ODP_EVENT_PACKET
> > -/** Buffer pool */
> > -#define ODP_POOL_BUFFER       ODP_EVENT_BUFFER
> > -/** Timeout pool */
> > -#define ODP_POOL_TIMEOUT      ODP_EVENT_TIMEOUT
> > -
> > -/**
> >   * Create a pool
> >   *
> >   * This routine is used to create a pool. It take two arguments: the
> > optional
> > diff --git a/include/odp/api/pool_param.h b/include/odp/api/pool_param.h
> > new file mode 100644
> > index 0000000..0d043a4
> > --- /dev/null
> > +++ b/include/odp/api/pool_param.h
> > @@ -0,0 +1,95 @@
> > +/* Copyright (c) 2015, Linaro Limited
> > + * All rights reserved.
> > + *
> > + * SPDX-License-Identifier:     BSD-3-Clause
> > + */
> > +
> > +/**
> > + * @file
> > + *
> > + * ODP pool param
> > + */
> > +
> > +#ifndef ODP_API_POOL_PARAM_H_
> > +#define ODP_API_POOL_PARAM_H_
> > +
> > +#ifdef __cplusplus
> > +extern "C" {
> > +#endif
> > +
> > +#include <odp/std_types.h>
> > +
> > +/** @addtogroup odp_buffer
> > + *  ODP Pool parameters
> > + *  @{
> > + */
> > +
> > +/**
> > + * Pool type
> > + */
> > +
> > +typedef enum odp_pool_type_e {
> > +     ODP_POOL_PACKET  = ODP_EVENT_PACKET,
> > +     ODP_POOL_BUFFER  = ODP_EVENT_BUFFER,
> > +     ODP_POOL_TIMEOUT = ODP_EVENT_TIMEOUT,
> > +} odp_pool_type_e;
> > +
> > +/**
> > + * Pool parameters
> > + * Used to communicate pool creation options.
> > + */
> > +typedef struct odp_pool_param_t {
> > +     /** Pool type */
> > +     odp_pool_type_e type;
> > +
> > +     union {
> > +             struct {
> > +                     /** Number of buffers in the pool */
> > +                     uint32_t num;
> > +
> > +                     /** Buffer size in bytes. The maximum number of
> bytes
> > +                         application will store in each buffer. */
> > +                     uint32_t size;
> > +
> > +                     /** Minimum buffer alignment in bytes. Valid
> values are
> > +                         powers of two. Use 0 for default alignment.
> > +                         Default will always be a multiple of 8. */
> > +                     uint32_t align;
> > +             } buf;
> > +             struct {
> > +                     /** The number of packets that the pool must
> provide
> > +                         that are packet length 'len' bytes or smaller.
> */
> > +                     uint32_t num;
> > +
> > +                     /** Minimum packet length that the pool must
> provide
> > +                         'num' packets. The number of packets may be
> less
> > +                         than 'num' when packets are larger than 'len'.
> > +                         Use 0 for default. */
> > +                     uint32_t len;
> > +
> > +                     /** Minimum number of packet data bytes that are
> stored
> > +                         in the first segment of a packet. The maximum
> value
> > +                         is defined by ODP_CONFIG_PACKET_SEG_LEN_MAX.
> > +                         Use 0 for default. */
> > +                     uint32_t seg_len;
> > +
> > +                     /** User area size in bytes. Specify as 0 if no
> user
> > +                         area is needed. */
> > +                     uint32_t uarea_size;
> > +             } pkt;
> > +             struct {
> > +                     /** Number of timeouts in the pool */
> > +                     uint32_t num;
> > +             } tmo;
> > +     };
> > +} odp_pool_param_t;
> > +
> > +/**
> > + * @}
> > + */
> > +
> > +#ifdef __cplusplus
> > +}
> > +#endif
> > +
> > +#endif
> > --
> > 2.1.0
> >
> > _______________________________________________
> > lng-odp mailing list
> > lng-odp@lists.linaro.org
> > https://lists.linaro.org/mailman/listinfo/lng-odp
>
diff mbox

Patch

diff --git a/include/odp/api/pool.h b/include/odp/api/pool.h
index 0bcfb98..b95f40d 100644
--- a/include/odp/api/pool.h
+++ b/include/odp/api/pool.h
@@ -41,63 +41,6 @@  extern "C" {
 #define ODP_POOL_NAME_LEN  32
 
 /**
- * Pool parameters
- * Used to communicate pool creation options.
- */
-typedef struct odp_pool_param_t {
-	/** Pool type */
-	int type;
-
-	union {
-		struct {
-			/** Number of buffers in the pool */
-			uint32_t num;
-
-			/** Buffer size in bytes. The maximum number of bytes
-			    application will store in each buffer. */
-			uint32_t size;
-
-			/** Minimum buffer alignment in bytes. Valid values are
-			    powers of two. Use 0 for default alignment.
-			    Default will always be a multiple of 8. */
-			uint32_t align;
-		} buf;
-		struct {
-			/** The number of packets that the pool must provide
-			    that are packet length 'len' bytes or smaller. */
-			uint32_t num;
-
-			/** Minimum packet length that the pool must provide
-			    'num' packets. The number of packets may be less
-			    than 'num' when packets are larger than 'len'.
-			    Use 0 for default. */
-			uint32_t len;
-
-			/** Minimum number of packet data bytes that are stored
-			    in the first segment of a packet. The maximum value
-			    is defined by ODP_CONFIG_PACKET_SEG_LEN_MAX.
-			    Use 0 for default. */
-			uint32_t seg_len;
-
-			/** User area size in bytes. Specify as 0 if no user
-			    area is needed. */
-			uint32_t uarea_size;
-		} pkt;
-		struct {
-			/** Number of timeouts in the pool */
-			uint32_t num;
-		} tmo;
-	};
-} odp_pool_param_t;
-
-/** Packet pool*/
-#define ODP_POOL_PACKET       ODP_EVENT_PACKET
-/** Buffer pool */
-#define ODP_POOL_BUFFER       ODP_EVENT_BUFFER
-/** Timeout pool */
-#define ODP_POOL_TIMEOUT      ODP_EVENT_TIMEOUT
-
-/**
  * Create a pool
  *
  * This routine is used to create a pool. It take two arguments: the optional
diff --git a/include/odp/api/pool_param.h b/include/odp/api/pool_param.h
new file mode 100644
index 0000000..0d043a4
--- /dev/null
+++ b/include/odp/api/pool_param.h
@@ -0,0 +1,95 @@ 
+/* Copyright (c) 2015, Linaro Limited
+ * All rights reserved.
+ *
+ * SPDX-License-Identifier:     BSD-3-Clause
+ */
+
+/**
+ * @file
+ *
+ * ODP pool param
+ */
+
+#ifndef ODP_API_POOL_PARAM_H_
+#define ODP_API_POOL_PARAM_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <odp/std_types.h>
+
+/** @addtogroup odp_buffer
+ *  ODP Pool parameters
+ *  @{
+ */
+
+/**
+ * Pool type
+ */
+
+typedef enum odp_pool_type_e {
+	ODP_POOL_PACKET  = ODP_EVENT_PACKET,
+	ODP_POOL_BUFFER  = ODP_EVENT_BUFFER,
+	ODP_POOL_TIMEOUT = ODP_EVENT_TIMEOUT,
+} odp_pool_type_e;
+
+/**
+ * Pool parameters
+ * Used to communicate pool creation options.
+ */
+typedef struct odp_pool_param_t {
+	/** Pool type */
+	odp_pool_type_e type;
+
+	union {
+		struct {
+			/** Number of buffers in the pool */
+			uint32_t num;
+
+			/** Buffer size in bytes. The maximum number of bytes
+			    application will store in each buffer. */
+			uint32_t size;
+
+			/** Minimum buffer alignment in bytes. Valid values are
+			    powers of two. Use 0 for default alignment.
+			    Default will always be a multiple of 8. */
+			uint32_t align;
+		} buf;
+		struct {
+			/** The number of packets that the pool must provide
+			    that are packet length 'len' bytes or smaller. */
+			uint32_t num;
+
+			/** Minimum packet length that the pool must provide
+			    'num' packets. The number of packets may be less
+			    than 'num' when packets are larger than 'len'.
+			    Use 0 for default. */
+			uint32_t len;
+
+			/** Minimum number of packet data bytes that are stored
+			    in the first segment of a packet. The maximum value
+			    is defined by ODP_CONFIG_PACKET_SEG_LEN_MAX.
+			    Use 0 for default. */
+			uint32_t seg_len;
+
+			/** User area size in bytes. Specify as 0 if no user
+			    area is needed. */
+			uint32_t uarea_size;
+		} pkt;
+		struct {
+			/** Number of timeouts in the pool */
+			uint32_t num;
+		} tmo;
+	};
+} odp_pool_param_t;
+
+/**
+ * @}
+ */
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif