mirror of
https://github.com/apache/nuttx.git
synced 2026-06-04 06:42:32 +08:00
Squashed commit of the following:
Author: Xiang Xiao <xiaoxiang@xiaomi.com> arch/arm/src/armv7-m: Implement SYSTICK timer driver Author: anchao <anchao@pinecone.net> configs/sim/loadable: Add loadable demo for arch sim sched/init: Restore previously reverted option to mount block device for INIT_FILEPATH case configs/stm3240g-eval/knxwm: Fix build breakage. Author: Gregory Nutt <gnutt@nuttx.org> configs: With recent changes to apps/ all configurations that build applications as modules must now also select CONFIG_APPS_LOADABLE. Author: anchao <anchao@pinecone.net> configs/sim/loadable: Add loadable demo for arch sim Kconfig and tools/Makefile.unix and : add dynamic application loadable support
This commit is contained in:
+13
-4
@@ -45,7 +45,9 @@
|
||||
|
||||
#include <sched.h>
|
||||
#include <stdlib.h>
|
||||
#include <string.h>
|
||||
#include <debug.h>
|
||||
#include <sys/mount.h>
|
||||
|
||||
#include <nuttx/arch.h>
|
||||
#include <nuttx/board.h>
|
||||
@@ -98,10 +100,6 @@
|
||||
* program.
|
||||
*/
|
||||
|
||||
# ifndef CONFIG_BOARD_INITIALIZE
|
||||
# warning You probably need CONFIG_BOARD_INITIALIZE to mount the file system
|
||||
# endif
|
||||
|
||||
# ifndef CONFIG_USER_INITPATH
|
||||
/* Path to the initialization program must have been provided */
|
||||
|
||||
@@ -287,6 +285,16 @@ static inline void os_do_appstart(void)
|
||||
board_initialize();
|
||||
#endif
|
||||
|
||||
#ifdef CONFIG_INIT_MOUNT
|
||||
/* Mount the file system containing the init program. */
|
||||
|
||||
ret = mount(CONFIG_INIT_MOUNT_SOURCE, CONFIG_INIT_MOUNT_TARGET,
|
||||
CONFIG_INIT_MOUNT_FSTYPE, CONFIG_INIT_MOUNT_FLAGS,
|
||||
CONFIG_INIT_MOUNT_DATA);
|
||||
DEBUGASSERT(ret >= 0);
|
||||
UNUSED(ret);
|
||||
#endif
|
||||
|
||||
/* Start the application initialization program from a program in a
|
||||
* mounted file system. Presumably the file system was mounted as part
|
||||
* of the board_initialize() operation.
|
||||
@@ -297,6 +305,7 @@ static inline void os_do_appstart(void)
|
||||
ret = exec(CONFIG_USER_INITPATH, NULL, CONFIG_INIT_SYMTAB,
|
||||
CONFIG_INIT_NEXPORTS);
|
||||
ASSERT(ret >= 0);
|
||||
UNUSED(ret);
|
||||
}
|
||||
|
||||
#elif defined(CONFIG_INIT_NONE)
|
||||
|
||||
Reference in New Issue
Block a user