You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@mynewt.apache.org by st...@apache.org on 2016/08/01 18:07:36 UTC
incubator-mynewt-core git commit: initialize os device structure
properly. add primary and secondary init phases.
Repository: incubator-mynewt-core
Updated Branches:
refs/heads/sterly_refactor 93d29b847 -> f0e3b9a0f
initialize os device structure properly. add primary and secondary init phases.
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/f0e3b9a0
Tree: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/tree/f0e3b9a0
Diff: http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/diff/f0e3b9a0
Branch: refs/heads/sterly_refactor
Commit: f0e3b9a0f4b26806345a6101dfff39d61f52e4a1
Parents: 93d29b8
Author: Sterling Hughes <st...@apache.org>
Authored: Mon Aug 1 11:07:25 2016 -0700
Committer: Sterling Hughes <st...@apache.org>
Committed: Mon Aug 1 11:07:25 2016 -0700
----------------------------------------------------------------------
libs/os/include/os/os_dev.h | 4 +++-
libs/os/src/os.c | 6 ++++++
libs/os/src/os_dev.c | 3 ++-
3 files changed, 11 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/f0e3b9a0/libs/os/include/os/os_dev.h
----------------------------------------------------------------------
diff --git a/libs/os/include/os/os_dev.h b/libs/os/include/os/os_dev.h
index 7c3dc09..850eee1 100644
--- a/libs/os/include/os/os_dev.h
+++ b/libs/os/include/os/os_dev.h
@@ -31,7 +31,9 @@ struct os_dev;
* by the Mynewt kernel.
*
*/
-#define OS_DEV_INIT_KERNEL (1)
+#define OS_DEV_INIT_PRIMARY (1)
+#define OS_DEV_INIT_SECONDARY (2)
+#define OS_DEV_INIT_KERNEL (3)
#define OS_DEV_INIT_F_CRITICAL (1 << 0)
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/f0e3b9a0/libs/os/src/os.c
----------------------------------------------------------------------
diff --git a/libs/os/src/os.c b/libs/os/src/os.c
index 25d9d08..961d7a0 100644
--- a/libs/os/src/os.c
+++ b/libs/os/src/os.c
@@ -112,6 +112,12 @@ os_init(void)
err = os_arch_os_init();
assert(err == OS_OK);
+
+ err = (os_error_t) os_dev_initialize_all(OS_DEV_INIT_PRIMARY);
+ assert(err == OS_OK);
+
+ err = (os_error_t) os_dev_initialize_all(OS_DEV_INIT_SECONDARY);
+ assert(err == OS_OK);
}
/**
http://git-wip-us.apache.org/repos/asf/incubator-mynewt-core/blob/f0e3b9a0/libs/os/src/os_dev.c
----------------------------------------------------------------------
diff --git a/libs/os/src/os_dev.c b/libs/os/src/os_dev.c
index b99b4db..979db39 100644
--- a/libs/os/src/os_dev.c
+++ b/libs/os/src/os_dev.c
@@ -23,7 +23,8 @@
#include <string.h>
-static STAILQ_HEAD(, os_dev) g_os_dev_list;
+static STAILQ_HEAD(, os_dev) g_os_dev_list =
+ STAILQ_HEAD_INITIALIZER(g_os_dev_list);
static int
os_dev_init(struct os_dev *dev, char *name, uint8_t stage,