You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by ma...@apache.org on 2016/12/08 00:50:53 UTC
[2/2] incubator-mynewt-core git commit: oic;
move OIC platform init/device registration out of the omgr, and to
app.
oic; move OIC platform init/device registration out of the omgr,
and to app.
Project: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/commit/071271c8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/071271c8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/071271c8
Branch: refs/heads/develop
Commit: 071271c8550cf2f0fa59458577d25ca8159355a7
Parents: efafbb7
Author: Marko Kiiskila <ma...@runtime.io>
Authored: Wed Dec 7 16:50:07 2016 -0800
Committer: Marko Kiiskila <ma...@runtime.io>
Committed: Wed Dec 7 16:50:07 2016 -0800
----------------------------------------------------------------------
apps/bleprph_oic/src/main.c | 24 ++++++++++--
apps/slinky_oic/src/main.c | 20 ++++++++++
mgmt/oicmgr/src/oicmgr.c | 27 ++------------
net/oic/src/api/oc_main.c | 80 ++++++++++++++++++++--------------------
4 files changed, 86 insertions(+), 65 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/071271c8/apps/bleprph_oic/src/main.c
----------------------------------------------------------------------
diff --git a/apps/bleprph_oic/src/main.c b/apps/bleprph_oic/src/main.c
index 2907639..203b1d4 100755
--- a/apps/bleprph_oic/src/main.c
+++ b/apps/bleprph_oic/src/main.c
@@ -29,6 +29,7 @@
#include "console/console.h"
#include "imgmgr/imgmgr.h"
#include "mgmt/mgmt.h"
+#include "oic/oc_api.h"
/* BLE */
#include "nimble/ble.h"
@@ -253,12 +254,27 @@ bleprph_on_sync(void)
bleprph_advertise();
}
+static void
+omgr_app_init(void)
+{
+ oc_init_platform("MyNewt", NULL, NULL);
+ oc_add_device("/oic/d", "oic.d.light", "MynewtLed", "1.0", "1.0", NULL,
+ NULL);
+}
+
+static const oc_handler_t omgr_oc_handler = {
+ .init = omgr_app_init,
+};
+
/*
* Event loop for the main bleprph task.
*/
static void
bleprph_task_handler(void *unused)
{
+ oc_main_init((oc_handler_t *)&omgr_oc_handler);
+ mgmt_evq_set(&bleprph_evq);
+
while (1) {
os_eventq_run(&bleprph_evq);
}
@@ -285,10 +301,12 @@ main(void)
sysinit();
/* Initialize the bleprph log. */
- log_register("bleprph", &bleprph_log, &log_console_handler, NULL, LOG_SYSLEVEL);
+ log_register("bleprph", &bleprph_log, &log_console_handler, NULL,
+ LOG_SYSLEVEL);
/* Initialize the NimBLE host configuration. */
- log_register("ble_hs", &ble_hs_log, &log_console_handler, NULL, LOG_SYSLEVEL);
+ log_register("ble_hs", &ble_hs_log, &log_console_handler, NULL,
+ LOG_SYSLEVEL);
/* Initialize the OIC */
log_register("oic", &oc_log, &log_console_handler, NULL, LOG_SYSLEVEL);
@@ -303,7 +321,7 @@ main(void)
os_task_init(&bleprph_task, "bleprph", bleprph_task_handler,
NULL, BLEPRPH_TASK_PRIO, OS_WAIT_FOREVER,
bleprph_stack, BLEPRPH_STACK_SIZE);
- mgmt_evq_set(&bleprph_evq);
+
ble_hs_evq_set(&bleprph_evq);
oc_ble_coap_gatt_srv_init();
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/071271c8/apps/slinky_oic/src/main.c
----------------------------------------------------------------------
diff --git a/apps/slinky_oic/src/main.c b/apps/slinky_oic/src/main.c
index 06c7bef..2c72098 100755
--- a/apps/slinky_oic/src/main.c
+++ b/apps/slinky_oic/src/main.c
@@ -34,6 +34,7 @@
#include <bootutil/image.h>
#include <imgmgr/imgmgr.h>
#include <mgmt/mgmt.h>
+#include <oic/oc_api.h>
#include <assert.h>
#include <string.h>
#include <json/json.h>
@@ -206,6 +207,23 @@ task2_handler(void *arg)
}
}
+/*
+ * OIC platform/resource registration.
+ */
+static void
+omgr_app_init(void)
+{
+ oc_init_platform("MyNewt", NULL, NULL);
+ /*
+ oc_add_device("/oic/d", "oic.d.light", "MynewtLed", "1.0", "1.0", NULL,
+ NULL);
+ */
+}
+
+static const oc_handler_t omgr_oc_handler = {
+ .init = omgr_app_init,
+};
+
/**
* This task serves as a container for the shell and newtmgr packages. These
* packages enqueue timer events when they need this task to do work.
@@ -213,6 +231,8 @@ task2_handler(void *arg)
static void
task3_handler(void *arg)
{
+ oc_main_init((oc_handler_t *)&omgr_oc_handler);
+
while (1) {
os_eventq_run(&slinky_oic_evq);
}
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/071271c8/mgmt/oicmgr/src/oicmgr.c
----------------------------------------------------------------------
diff --git a/mgmt/oicmgr/src/oicmgr.c b/mgmt/oicmgr/src/oicmgr.c
index e66c4ed..df86c5f 100644
--- a/mgmt/oicmgr/src/oicmgr.c
+++ b/mgmt/oicmgr/src/oicmgr.c
@@ -187,20 +187,15 @@ omgr_oic_put(oc_request_t *req, oc_interface_mask_t mask)
}
static void
-omgr_app_init(void)
-{
- oc_init_platform("MyNewt", NULL, NULL);
- oc_add_device("/oic/d", "oic.d.light", "MynewtLed", "1.0", "1.0", NULL,
- NULL);
-}
-
-static void
-omgr_register_resources(void)
+omgr_event_start(struct os_event *ev)
{
uint8_t mode;
oc_resource_t *res = NULL;
char name[12];
+ /*
+ * net/oic must be initialized before now.
+ */
snprintf(name, sizeof(name), "/omgr");
res = oc_new_resource(name, 1, 0);
oc_resource_bind_resource_type(res, "x.mynewt.nmgr");
@@ -213,20 +208,6 @@ omgr_register_resources(void)
oc_add_resource(res);
}
-static const oc_handler_t omgr_oc_handler = {
- .init = omgr_app_init,
- .register_resources = omgr_register_resources
-};
-
-static void
-omgr_event_start(struct os_event *ev)
-{
- struct omgr_state *o = &omgr_state;
-
- oc_main_init((oc_handler_t *)&omgr_oc_handler);
- os_eventq_ensure(&o->os_evq, NULL);
-}
-
int
oicmgr_init(void)
{
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/071271c8/net/oic/src/api/oc_main.c
----------------------------------------------------------------------
diff --git a/net/oic/src/api/oc_main.c b/net/oic/src/api/oc_main.c
index acf0219..1979e51 100644
--- a/net/oic/src/api/oc_main.c
+++ b/net/oic/src/api/oc_main.c
@@ -36,57 +36,59 @@ static bool initialized = false;
int
oc_main_init(oc_handler_t *handler)
{
- int ret;
- extern int oc_stack_errno;
+ int ret;
+ extern int oc_stack_errno;
- if (initialized == true)
- return 0;
-
- oc_ri_init();
+ if (initialized == true) {
+ return 0;
+ }
+ oc_ri_init();
#ifdef OC_SECURITY
- handler->get_credentials();
+ handler->get_credentials();
- oc_sec_load_pstat();
- oc_sec_load_doxm();
- oc_sec_load_cred();
+ oc_sec_load_pstat();
+ oc_sec_load_doxm();
+ oc_sec_load_cred();
- oc_sec_dtls_init_context();
+ oc_sec_dtls_init_context();
#endif
- oc_network_event_handler_mutex_init();
- ret = oc_connectivity_init();
- if (ret < 0)
- goto err;
-
- handler->init();
+ oc_network_event_handler_mutex_init();
+ ret = oc_connectivity_init();
+ if (ret < 0) {
+ goto err;
+ }
+ handler->init();
#ifdef OC_SERVER
- handler->register_resources();
+ if (handler->register_resources) {
+ handler->register_resources();
+ }
#endif
#ifdef OC_SECURITY
- oc_sec_create_svr();
- oc_sec_load_acl();
+ oc_sec_create_svr();
+ oc_sec_load_acl();
#endif
- if (oc_stack_errno != 0) {
- ret = -oc_stack_errno;
- goto err;
- }
+ if (oc_stack_errno != 0) {
+ ret = -oc_stack_errno;
+ goto err;
+ }
- PRINT("oc_main: Stack successfully initialized\n");
+ PRINT("oci: Initialized\n");
#ifdef OC_CLIENT
- handler->requests_entry();
+ handler->requests_entry();
#endif
- initialized = true;
- return 0;
+ initialized = true;
+ return 0;
err:
- oc_abort("oc_main: Error in stack initialization\n");
- return ret;
+ oc_abort("oc_main: Error in stack initialization\n");
+ return ret;
}
oc_clock_time_t
@@ -98,17 +100,17 @@ oc_main_poll(void)
void
oc_main_shutdown(void)
{
- if (initialized == false) {
- PRINT("tiny_ocf is not initialized\n");
- return;
- }
+ if (initialized == false) {
+ PRINT("oci: not initialized\n");
+ return;
+ }
- oc_connectivity_shutdown();
- oc_ri_shutdown();
+ oc_connectivity_shutdown();
+ oc_ri_shutdown();
-#ifdef OC_SECURITY /* fix ensure this gets executed on constraied platforms */
- oc_sec_dump_state();
+#ifdef OC_SECURITY /* fix ensure this gets executed on constrained platforms */
+ oc_sec_dump_state();
#endif
- initialized = false;
+ initialized = false;
}