Re: [lng-odp] [API-NEXT PATCH 05/21] test: drv: enumerator registration tests

2017-02-27 Thread Christophe Milard
will fix all these in V2,

Christophe.

On 22 February 2017 at 22:52, Bill Fischofer  wrote:
>
>
> On Wed, Feb 22, 2017 at 6:55 AM, Christophe Milard
>  wrote:
>>
>> making sure that enumerators are probed.
>>
>> Signed-off-by: Christophe Milard 
>> ---
>>  .../validation/drv/drvdriver/.gitignore|   1 +
>>  .../validation/drv/drvdriver/Makefile.am   |  11 +
>>  .../validation/drv/drvdriver/drvdriver_enumr.c | 303
>> +
>>  .../validation/drv/drvdriver/drvdriver_enumr.h |  24 ++
>>  .../drv/drvdriver/drvdriver_enumr_main.c   |  12 +
>>  test/linux-generic/Makefile.am |   1 +
>>  6 files changed, 352 insertions(+)
>>  create mode 100644
>> test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
>>  create mode 100644
>> test/common_plat/validation/drv/drvdriver/drvdriver_enumr.h
>>  create mode 100644
>> test/common_plat/validation/drv/drvdriver/drvdriver_enumr_main.c
>>
>> diff --git a/test/common_plat/validation/drv/drvdriver/.gitignore
>> b/test/common_plat/validation/drv/drvdriver/.gitignore
>> index 9268315..a842448 100644
>> --- a/test/common_plat/validation/drv/drvdriver/.gitignore
>> +++ b/test/common_plat/validation/drv/drvdriver/.gitignore
>> @@ -1 +1,2 @@
>>  drvdriver_enumr_class_main
>> +drvdriver_enumr_main
>> diff --git a/test/common_plat/validation/drv/drvdriver/Makefile.am
>> b/test/common_plat/validation/drv/drvdriver/Makefile.am
>> index 9e941ee..3476c50 100644
>> --- a/test/common_plat/validation/drv/drvdriver/Makefile.am
>> +++ b/test/common_plat/validation/drv/drvdriver/Makefile.am
>> @@ -14,3 +14,14 @@ drvdriver_enumr_class_main_LDADD =
>> libtestdrvdriverenumrclass.la \
>>$(LIBCUNIT_COMMON) $(LIBODP)
>>
>>  EXTRA_DIST = drvdriver_enumr_class.h
>> +
>> +#tests for enumerator registration:
>> +noinst_LTLIBRARIES += libtestdrvdriverenumr.la
>> +libtestdrvdriverenumr_la_SOURCES = drvdriver_enumr.c
>> +
>> +test_PROGRAMS += drvdriver_enumr_main$(EXEEXT)
>> +dist_drvdriver_enumr_main_SOURCES = drvdriver_enumr_main.c
>> +drvdriver_enumr_main_LDADD = libtestdrvdriverenumr.la \
>> +  $(LIBCUNIT_COMMON) $(LIBODP)
>> +
>> +EXTRA_DIST += drvdriver_enumr.h
>> diff --git a/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
>> b/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
>> new file mode 100644
>> index 000..cf844cf
>> --- /dev/null
>> +++ b/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
>> @@ -0,0 +1,303 @@
>> +/* Copyright (c) 2017, Linaro Limited
>> + * All rights reserved.
>> + *
>> + * SPDX-License-Identifier: BSD-3-Clause
>> + */
>> +
>> +#include 
>> +#include 
>> +#include 
>> +#include "drvdriver_enumr.h"
>> +#include 
>> +
>> +static odp_instance_t odp_instance;
>> +static odpdrv_enumr_class_t enumr_class1, enumr_class2;
>> +
>> +/* markers showing that different stages have been run */
>> +static int enumr1_probed;
>> +static int enumr2_probed;
>> +static int enumr3_probed;
>> +static int enumr4_probed;
>> +
>> +/* forward declaration */
>> +static int enumr1_probe(void);
>> +static int enumr2_probe(void);
>> +static int enumr3_probe(void);
>> +static int enumr4_probe(void);
>> +
>> +static int enumr1_remove(void);
>> +static int enumr2_remove(void);
>> +static int enumr3_remove(void);
>> +static int enumr4_remove(void);
>> +
>> +static int enumr_class1_probe(void);
>> +static int enumr_class2_probe(void);
>> +
>> +static int enumr_class1_remove(void);
>> +static int enumr_class2_remove(void);
>> +
>> +/* because many things to be checked are performed during ODP
>> initialisation,
>> + * the initialisation functions have to be a part of the test
>> + */
>> +static int tests_global_init(void)
>> +{
>> +   if (0 != odp_init_global(_instance, NULL, NULL)) {
>> +   fprintf(stderr, "error: odp_init_global() failed.\n");
>> +   return -1;
>> +   }
>> +   if (0 != odp_init_local(odp_instance, ODP_THREAD_CONTROL)) {
>> +   fprintf(stderr, "error: odp_init_local() failed.\n");
>> +   return -1;
>> +   }
>> +
>> +   return 0;
>> +}
>> +
>> +static int tests_global_term(void)
>> +{
>> +   if (0 != odp_term_local()) {
>> +   fprintf(stderr, "error: odp_term_local() failed.\n");
>> +   return -1;
>> +   }
>> +
>> +   if (0 != odp_term_global(odp_instance)) {
>> +   fprintf(stderr, "error: odp_term_global() failed.\n");
>> +   return -1;
>> +   }
>> +
>> +   return 0;
>> +}
>> +
>> +/*enumerator register functions */
>> +static odpdrv_enumr_t enumr1_register(void)
>> +{
>> +   odpdrv_enumr_param_t param = {
>> +   .enumr_class = enumr_class1,
>> +   .api_name = "Enumerator_interface_1",
>> +   .api_version = 1,
>> +   .probe = enumr1_probe,

Re: [lng-odp] [API-NEXT PATCH 05/21] test: drv: enumerator registration tests

2017-02-22 Thread Bill Fischofer
On Wed, Feb 22, 2017 at 6:55 AM, Christophe Milard <
christophe.mil...@linaro.org> wrote:

> making sure that enumerators are probed.
>
> Signed-off-by: Christophe Milard 
> ---
>  .../validation/drv/drvdriver/.gitignore|   1 +
>  .../validation/drv/drvdriver/Makefile.am   |  11 +
>  .../validation/drv/drvdriver/drvdriver_enumr.c | 303
> +
>  .../validation/drv/drvdriver/drvdriver_enumr.h |  24 ++
>  .../drv/drvdriver/drvdriver_enumr_main.c   |  12 +
>  test/linux-generic/Makefile.am |   1 +
>  6 files changed, 352 insertions(+)
>  create mode 100644 test/common_plat/validation/
> drv/drvdriver/drvdriver_enumr.c
>  create mode 100644 test/common_plat/validation/
> drv/drvdriver/drvdriver_enumr.h
>  create mode 100644 test/common_plat/validation/
> drv/drvdriver/drvdriver_enumr_main.c
>
> diff --git a/test/common_plat/validation/drv/drvdriver/.gitignore
> b/test/common_plat/validation/drv/drvdriver/.gitignore
> index 9268315..a842448 100644
> --- a/test/common_plat/validation/drv/drvdriver/.gitignore
> +++ b/test/common_plat/validation/drv/drvdriver/.gitignore
> @@ -1 +1,2 @@
>  drvdriver_enumr_class_main
> +drvdriver_enumr_main
> diff --git a/test/common_plat/validation/drv/drvdriver/Makefile.am
> b/test/common_plat/validation/drv/drvdriver/Makefile.am
> index 9e941ee..3476c50 100644
> --- a/test/common_plat/validation/drv/drvdriver/Makefile.am
> +++ b/test/common_plat/validation/drv/drvdriver/Makefile.am
> @@ -14,3 +14,14 @@ drvdriver_enumr_class_main_LDADD =
> libtestdrvdriverenumrclass.la \
>$(LIBCUNIT_COMMON) $(LIBODP)
>
>  EXTRA_DIST = drvdriver_enumr_class.h
> +
> +#tests for enumerator registration:
> +noinst_LTLIBRARIES += libtestdrvdriverenumr.la
> +libtestdrvdriverenumr_la_SOURCES = drvdriver_enumr.c
> +
> +test_PROGRAMS += drvdriver_enumr_main$(EXEEXT)
> +dist_drvdriver_enumr_main_SOURCES = drvdriver_enumr_main.c
> +drvdriver_enumr_main_LDADD = libtestdrvdriverenumr.la \
> +  $(LIBCUNIT_COMMON) $(LIBODP)
> +
> +EXTRA_DIST += drvdriver_enumr.h
> diff --git a/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
> b/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
> new file mode 100644
> index 000..cf844cf
> --- /dev/null
> +++ b/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
> @@ -0,0 +1,303 @@
> +/* Copyright (c) 2017, Linaro Limited
> + * All rights reserved.
> + *
> + * SPDX-License-Identifier: BSD-3-Clause
> + */
> +
> +#include 
> +#include 
> +#include 
> +#include "drvdriver_enumr.h"
> +#include 
> +
> +static odp_instance_t odp_instance;
> +static odpdrv_enumr_class_t enumr_class1, enumr_class2;
> +
> +/* markers showing that different stages have been run */
> +static int enumr1_probed;
> +static int enumr2_probed;
> +static int enumr3_probed;
> +static int enumr4_probed;
> +
> +/* forward declaration */
> +static int enumr1_probe(void);
> +static int enumr2_probe(void);
> +static int enumr3_probe(void);
> +static int enumr4_probe(void);
> +
> +static int enumr1_remove(void);
> +static int enumr2_remove(void);
> +static int enumr3_remove(void);
> +static int enumr4_remove(void);
> +
> +static int enumr_class1_probe(void);
> +static int enumr_class2_probe(void);
> +
> +static int enumr_class1_remove(void);
> +static int enumr_class2_remove(void);
> +
> +/* because many things to be checked are performed during ODP
> initialisation,
> + * the initialisation functions have to be a part of the test
> + */
> +static int tests_global_init(void)
> +{
> +   if (0 != odp_init_global(_instance, NULL, NULL)) {
> +   fprintf(stderr, "error: odp_init_global() failed.\n");
> +   return -1;
> +   }
> +   if (0 != odp_init_local(odp_instance, ODP_THREAD_CONTROL)) {
> +   fprintf(stderr, "error: odp_init_local() failed.\n");
> +   return -1;
> +   }
> +
> +   return 0;
> +}
> +
> +static int tests_global_term(void)
> +{
> +   if (0 != odp_term_local()) {
> +   fprintf(stderr, "error: odp_term_local() failed.\n");
> +   return -1;
> +   }
> +
> +   if (0 != odp_term_global(odp_instance)) {
> +   fprintf(stderr, "error: odp_term_global() failed.\n");
> +   return -1;
> +   }
> +
> +   return 0;
> +}
> +
> +/*enumerator register functions */
> +static odpdrv_enumr_t enumr1_register(void)
> +{
> +   odpdrv_enumr_param_t param = {
> +   .enumr_class = enumr_class1,
> +   .api_name = "Enumerator_interface_1",
> +   .api_version = 1,
> +   .probe = enumr1_probe,
> +   .remove = enumr1_remove,
> +   .register_notifier = NULL
> +   };
> +
> +   return odpdrv_enumr_register();
> +}
> +
> +static odpdrv_enumr_t enumr2_register(void)
> +{
> +   odpdrv_enumr_param_t param = {
> + 

[lng-odp] [API-NEXT PATCH 05/21] test: drv: enumerator registration tests

2017-02-22 Thread Christophe Milard
making sure that enumerators are probed.

Signed-off-by: Christophe Milard 
---
 .../validation/drv/drvdriver/.gitignore|   1 +
 .../validation/drv/drvdriver/Makefile.am   |  11 +
 .../validation/drv/drvdriver/drvdriver_enumr.c | 303 +
 .../validation/drv/drvdriver/drvdriver_enumr.h |  24 ++
 .../drv/drvdriver/drvdriver_enumr_main.c   |  12 +
 test/linux-generic/Makefile.am |   1 +
 6 files changed, 352 insertions(+)
 create mode 100644 test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
 create mode 100644 test/common_plat/validation/drv/drvdriver/drvdriver_enumr.h
 create mode 100644 
test/common_plat/validation/drv/drvdriver/drvdriver_enumr_main.c

diff --git a/test/common_plat/validation/drv/drvdriver/.gitignore 
b/test/common_plat/validation/drv/drvdriver/.gitignore
index 9268315..a842448 100644
--- a/test/common_plat/validation/drv/drvdriver/.gitignore
+++ b/test/common_plat/validation/drv/drvdriver/.gitignore
@@ -1 +1,2 @@
 drvdriver_enumr_class_main
+drvdriver_enumr_main
diff --git a/test/common_plat/validation/drv/drvdriver/Makefile.am 
b/test/common_plat/validation/drv/drvdriver/Makefile.am
index 9e941ee..3476c50 100644
--- a/test/common_plat/validation/drv/drvdriver/Makefile.am
+++ b/test/common_plat/validation/drv/drvdriver/Makefile.am
@@ -14,3 +14,14 @@ drvdriver_enumr_class_main_LDADD = 
libtestdrvdriverenumrclass.la \
   $(LIBCUNIT_COMMON) $(LIBODP)
 
 EXTRA_DIST = drvdriver_enumr_class.h
+
+#tests for enumerator registration:
+noinst_LTLIBRARIES += libtestdrvdriverenumr.la
+libtestdrvdriverenumr_la_SOURCES = drvdriver_enumr.c
+
+test_PROGRAMS += drvdriver_enumr_main$(EXEEXT)
+dist_drvdriver_enumr_main_SOURCES = drvdriver_enumr_main.c
+drvdriver_enumr_main_LDADD = libtestdrvdriverenumr.la \
+  $(LIBCUNIT_COMMON) $(LIBODP)
+
+EXTRA_DIST += drvdriver_enumr.h
diff --git a/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c 
b/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
new file mode 100644
index 000..cf844cf
--- /dev/null
+++ b/test/common_plat/validation/drv/drvdriver/drvdriver_enumr.c
@@ -0,0 +1,303 @@
+/* Copyright (c) 2017, Linaro Limited
+ * All rights reserved.
+ *
+ * SPDX-License-Identifier: BSD-3-Clause
+ */
+
+#include 
+#include 
+#include 
+#include "drvdriver_enumr.h"
+#include 
+
+static odp_instance_t odp_instance;
+static odpdrv_enumr_class_t enumr_class1, enumr_class2;
+
+/* markers showing that different stages have been run */
+static int enumr1_probed;
+static int enumr2_probed;
+static int enumr3_probed;
+static int enumr4_probed;
+
+/* forward declaration */
+static int enumr1_probe(void);
+static int enumr2_probe(void);
+static int enumr3_probe(void);
+static int enumr4_probe(void);
+
+static int enumr1_remove(void);
+static int enumr2_remove(void);
+static int enumr3_remove(void);
+static int enumr4_remove(void);
+
+static int enumr_class1_probe(void);
+static int enumr_class2_probe(void);
+
+static int enumr_class1_remove(void);
+static int enumr_class2_remove(void);
+
+/* because many things to be checked are performed during ODP initialisation,
+ * the initialisation functions have to be a part of the test
+ */
+static int tests_global_init(void)
+{
+   if (0 != odp_init_global(_instance, NULL, NULL)) {
+   fprintf(stderr, "error: odp_init_global() failed.\n");
+   return -1;
+   }
+   if (0 != odp_init_local(odp_instance, ODP_THREAD_CONTROL)) {
+   fprintf(stderr, "error: odp_init_local() failed.\n");
+   return -1;
+   }
+
+   return 0;
+}
+
+static int tests_global_term(void)
+{
+   if (0 != odp_term_local()) {
+   fprintf(stderr, "error: odp_term_local() failed.\n");
+   return -1;
+   }
+
+   if (0 != odp_term_global(odp_instance)) {
+   fprintf(stderr, "error: odp_term_global() failed.\n");
+   return -1;
+   }
+
+   return 0;
+}
+
+/*enumerator register functions */
+static odpdrv_enumr_t enumr1_register(void)
+{
+   odpdrv_enumr_param_t param = {
+   .enumr_class = enumr_class1,
+   .api_name = "Enumerator_interface_1",
+   .api_version = 1,
+   .probe = enumr1_probe,
+   .remove = enumr1_remove,
+   .register_notifier = NULL
+   };
+
+   return odpdrv_enumr_register();
+}
+
+static odpdrv_enumr_t enumr2_register(void)
+{
+   odpdrv_enumr_param_t param = {
+   .enumr_class = enumr_class1,
+   .api_name = "Enumerator_interface_2",
+   .api_version = 1,
+   .probe = enumr2_probe,
+   .remove = enumr2_remove,
+   .register_notifier = NULL
+   };
+
+   return odpdrv_enumr_register();
+}
+
+static odpdrv_enumr_t enumr3_register(void)
+{
+