|
@@ -83,6 +83,7 @@ typedef rt_base_t rt_off_t; /**< Type for offset */
|
|
|
#include <stdarg.h>
|
|
|
#define SECTION(x) __attribute__((section(x)))
|
|
|
#define UNUSED __attribute__((unused))
|
|
|
+ #define USED __attribute__((used))
|
|
|
#define ALIGN(n) __attribute__((aligned(n)))
|
|
|
#define rt_inline static __inline
|
|
|
/* module compiling */
|
|
@@ -128,6 +129,7 @@ typedef rt_base_t rt_off_t; /**< Type for offset */
|
|
|
|
|
|
#define SECTION(x) __attribute__((section(x)))
|
|
|
#define UNUSED __attribute__((unused))
|
|
|
+ #define USED __attribute__((used))
|
|
|
#define ALIGN(n) __attribute__((aligned(n)))
|
|
|
#define rt_inline static __inline
|
|
|
#define RTT_API
|
|
@@ -147,6 +149,23 @@ typedef rt_base_t rt_off_t; /**< Type for offset */
|
|
|
#define RTT_API
|
|
|
#endif
|
|
|
|
|
|
+/* initialization export */
|
|
|
+#ifdef RT_USING_COMPONENTS_INIT
|
|
|
+typedef int (*init_fn_t)(void);
|
|
|
+#define INIT_EXPORT(fn, level) \
|
|
|
+ const init_fn_t __rt_init_##fn SECTION(".rti_fn."level) = fn
|
|
|
+#else
|
|
|
+#define INIT_EXPORT(fn, level)
|
|
|
+#endif
|
|
|
+
|
|
|
+/* board init routines will be called in board_init() function */
|
|
|
+#define INIT_BOARD_EXPORT(fn) INIT_EXPORT(fn, "1")
|
|
|
+/* device/component/fs/app init routines will be called in init_thread */
|
|
|
+#define INIT_DEVICE_EXPORT(fn) INIT_EXPORT(fn, "2")
|
|
|
+#define INIT_COMPONENT_EXPORT(fn) INIT_EXPORT(fn, "3")
|
|
|
+#define INIT_FS_EXPORT(fn) INIT_EXPORT(fn, "4")
|
|
|
+#define INIT_APP_EXPORT(fn) INIT_EXPORT(fn, "5")
|
|
|
+
|
|
|
/* event length */
|
|
|
#define RT_EVENT_LENGTH 32
|
|
|
|