Comment inline. On Aug 21, 2014, at 11:01 AM, Mike Holmes <[email protected]> wrote:
> Signed-off-by: Mike Holmes <[email protected]> > --- > example/generator/odp_generator.c | 2 +- > example/l2fwd/odp_l2fwd.c | 2 +- > example/odp_example/odp_example.c | 2 +- > example/packet/odp_pktio.c | 2 +- > example/timer/odp_timer_test.c | 2 +- > include/odp_init.h | 22 +++++++++++++++++++--- > platform/linux-dpdk/odp_init.c | 3 ++- > platform/linux-generic/odp_init.c | 3 ++- > platform/linux-keystone2/odp_init.c | 3 ++- > test/api_test/odp_common.c | 2 +- > 10 files changed, 31 insertions(+), 12 deletions(-) > > diff --git a/example/generator/odp_generator.c > b/example/generator/odp_generator.c > index 9fa9b37..ba7aa68 100644 > --- a/example/generator/odp_generator.c > +++ b/example/generator/odp_generator.c > @@ -525,7 +525,7 @@ int main(int argc, char *argv[]) > int core_count; > > /* Init ODP before calling anything else */ > - if (odp_init_global()) { > + if (odp_init_global(NULL, NULL)) { > ODP_ERR("Error: ODP global init failed.\n"); > exit(EXIT_FAILURE); > } > diff --git a/example/l2fwd/odp_l2fwd.c b/example/l2fwd/odp_l2fwd.c > index d74449a..f8d6729 100644 > --- a/example/l2fwd/odp_l2fwd.c > +++ b/example/l2fwd/odp_l2fwd.c > @@ -323,7 +323,7 @@ int main(int argc, char *argv[]) > odp_pktio_t pktio; > > /* Init ODP before calling anything else */ > - if (odp_init_global()) { > + if (odp_init_global(NULL, NULL)) { > ODP_ERR("Error: ODP global init failed.\n"); > exit(EXIT_FAILURE); > } > diff --git a/example/odp_example/odp_example.c > b/example/odp_example/odp_example.c > index f0bdf29..3d38ac7 100644 > --- a/example/odp_example/odp_example.c > +++ b/example/odp_example/odp_example.c > @@ -951,7 +951,7 @@ int main(int argc, char *argv[]) > > memset(thread_tbl, 0, sizeof(thread_tbl)); > > - if (odp_init_global()) { > + if (odp_init_global(NULL, NULL)) { > printf("ODP global init failed.\n"); > return -1; > } > diff --git a/example/packet/odp_pktio.c b/example/packet/odp_pktio.c > index f247bd0..f3543a0 100644 > --- a/example/packet/odp_pktio.c > +++ b/example/packet/odp_pktio.c > @@ -311,7 +311,7 @@ int main(int argc, char *argv[]) > int core_count; > > /* Init ODP before calling anything else */ > - if (odp_init_global()) { > + if (odp_init_global(NULL, NULL)) { > ODP_ERR("Error: ODP global init failed.\n"); > exit(EXIT_FAILURE); > } > diff --git a/example/timer/odp_timer_test.c b/example/timer/odp_timer_test.c > index dbe0e5b..1af8c2b 100644 > --- a/example/timer/odp_timer_test.c > +++ b/example/timer/odp_timer_test.c > @@ -210,7 +210,7 @@ int main(int argc, char *argv[]) > > memset(thread_tbl, 0, sizeof(thread_tbl)); > > - if (odp_init_global()) { > + if (odp_init_global(NULL, NULL)) { > printf("ODP global init failed.\n"); > return -1; > } > diff --git a/include/odp_init.h b/include/odp_init.h > index 490324a..45db5f5 100644 > --- a/include/odp_init.h > +++ b/include/odp_init.h > @@ -23,23 +23,39 @@ extern "C" { > #include <odp_std_types.h> > > > +/** > + * ODP initialisation > + * Data that is required to initialize the ODP > + * application, such as specifying a logging callback, the log level etc. > + */ > +typedef struct odp_global_init { > +} odp_global_init_t; > > +/** > + * ODP platform initialization > + * Platform specific data. ODP does nothing with > + * this data. > + */ > +typedef struct odp_global_platform_init { > +} odp_global_platform_init_t; > > /** > - * Perform global ODP initalisation. > + * Perform global ODP initialisation. > * > * This function must be called once before calling > * any other ODP API functions. > * > * @return 0 if successful > */ > -int odp_init_global(void); > +int odp_init_global(odp_global_init_t *params, > + odp_global_platform_init_t *platform_params); > > > /** > - * Perform thread local ODP initalisation. > + * Perform thread local ODP initialisation. > * > * All threads must call this function before calling > + * > * any other ODP API functions. > * @param thr_id Thread id > * @return 0 if successful > diff --git a/platform/linux-dpdk/odp_init.c b/platform/linux-dpdk/odp_init.c > index ecc2066..c3f937d 100644 > --- a/platform/linux-dpdk/odp_init.c > +++ b/platform/linux-dpdk/odp_init.c > @@ -50,7 +50,8 @@ int odp_init_dpdk(void) > return 0; > } > > -int odp_init_global(void) > +int odp_init_global(odp_global_init_t *params ODP_UNUSED, > + odp_global_platform_init_t *platform_params ODP_UNUSED) > { > odp_thread_init_global(); For the code to init DPDK I would suggest: if ( odp_init_platform(platform_params) ) { To pass the platform_params down and change the odp_init_dpdk() to odp_init_platform() to make it generic. This means the odp_init_dpdk() routine needs to change to odp_init_platform() and get moved to its own platform specific file. > > diff --git a/platform/linux-generic/odp_init.c > b/platform/linux-generic/odp_init.c > index 5b7e192..8b339e4 100644 > --- a/platform/linux-generic/odp_init.c > +++ b/platform/linux-generic/odp_init.c > @@ -9,7 +9,8 @@ > #include <odp_debug.h> > > > -int odp_init_global(void) > +int odp_init_global(odp_global_init_t *params ODP_UNUSED, > + odp_global_platform_init_t *platform_params ODP_UNUSED) > { > odp_thread_init_global(); > Add the same odp_init_platform() call here as well, plus add the routine in a platform specific file. I know the routine is empty for this case, but it does make it so the code does not have to be altered. > diff --git a/platform/linux-keystone2/odp_init.c > b/platform/linux-keystone2/odp_init.c > index f832551..3111b51 100644 > --- a/platform/linux-keystone2/odp_init.c > +++ b/platform/linux-keystone2/odp_init.c > @@ -90,7 +90,8 @@ static int ti_init_hw_config(void) > } > > > -int odp_init_global(void) > +int odp_init_global(odp_global_init_t *init_data ODP_UNUSED, > + odp_global_platform_init_t *platform_params ODP_UNUSED) > { > odp_thread_init_global(); Add the same odp_init_platform() call here as well, plus add the routine in a platform specific file. > > diff --git a/test/api_test/odp_common.c b/test/api_test/odp_common.c > index 89ebd2d..fc583c0 100644 > --- a/test/api_test/odp_common.c > +++ b/test/api_test/odp_common.c > @@ -56,7 +56,7 @@ int odp_test_global_init(void) > { > memset(thread_tbl, 0, sizeof(thread_tbl)); > > - if (odp_init_global()) { > + if (odp_init_global(NULL, NULL)) { > ODP_ERR("ODP global init failed.\n"); > return -1; > } > -- > 1.9.1 > > > _______________________________________________ > lng-odp mailing list > [email protected] > http://lists.linaro.org/mailman/listinfo/lng-odp Let me know what you think? ++Keith Keith Wiles, Principal Technologist with CTO office, Wind River mobile 972-213-5533 _______________________________________________ lng-odp mailing list [email protected] http://lists.linaro.org/mailman/listinfo/lng-odp
