Doumentation/NuttxPortingGuide.html: Add description of board_early_initialize() and board_late_initialize().
This commit is contained in:
parent
32a300806e
commit
2fbec4cdf6
File diff suppressed because it is too large
Load Diff
@ -72,19 +72,10 @@
|
|||||||
* 3. Common Board Interfaces.
|
* 3. Common Board Interfaces.
|
||||||
*
|
*
|
||||||
* Any interface that is common across all boards should be prefixed
|
* Any interface that is common across all boards should be prefixed
|
||||||
* with board_ and should be prototyped in this header file. These
|
* with board_ and should be prototyped in the board.h header file.
|
||||||
* board_ definitions provide the interface between the board-level
|
* These board_ definitions provide the interface between the board-level
|
||||||
* logic and the architecture-specific logic.
|
* logic and the architecture-specific logic.
|
||||||
*
|
*
|
||||||
* Board related declarations are retained the file include/nuttx/board.h.
|
|
||||||
*
|
|
||||||
* There is also a configs/<board>/include/board.h header file that
|
|
||||||
* can be used to communicate other board-specific information between
|
|
||||||
* the architecture logic and even application logic. Any definitions
|
|
||||||
* which are common between a single architecture and several boards
|
|
||||||
* should go in this board.h header file; this file is reserved for
|
|
||||||
* board-related definitions common to all architectures.
|
|
||||||
*
|
|
||||||
* 4. Board-Specific Interfaces.
|
* 4. Board-Specific Interfaces.
|
||||||
*
|
*
|
||||||
* Any interface which is unique to a board should be prefixed with
|
* Any interface which is unique to a board should be prefixed with
|
||||||
|
@ -1151,8 +1151,8 @@ config BOARD_EARLY_INITIALIZE
|
|||||||
bool "Custom board early initialization"
|
bool "Custom board early initialization"
|
||||||
default n
|
default n
|
||||||
---help---
|
---help---
|
||||||
By default, there are three points in time where you can insert
|
There are three points in time where you can insert custom,
|
||||||
custom initialization logic:
|
board-specific initialization logic:
|
||||||
|
|
||||||
1) <arch>_board_initialize(): This function is used only for
|
1) <arch>_board_initialize(): This function is used only for
|
||||||
initialization of very low-level things like configuration of
|
initialization of very low-level things like configuration of
|
||||||
@ -1167,7 +1167,7 @@ config BOARD_EARLY_INITIALIZE
|
|||||||
|
|
||||||
At this same point in time, the OS will also call a board-
|
At this same point in time, the OS will also call a board-
|
||||||
specific initialization function named board_early_initialize()
|
specific initialization function named board_early_initialize()
|
||||||
if CONFIG_BOARD_EARLY_INITIALIZE is selectd. The context in
|
if CONFIG_BOARD_EARLY_INITIALIZE is selected. The context in
|
||||||
which board_early_initialize() executes is suitable for early
|
which board_early_initialize() executes is suitable for early
|
||||||
initialization of most, simple device drivers and is a logical,
|
initialization of most, simple device drivers and is a logical,
|
||||||
board-specific extension of up_initialize().
|
board-specific extension of up_initialize().
|
||||||
@ -1199,8 +1199,8 @@ config BOARD_LATE_INITIALIZE
|
|||||||
bool "Custom board late initialization"
|
bool "Custom board late initialization"
|
||||||
default n
|
default n
|
||||||
---help---
|
---help---
|
||||||
By default, there are three points in time where you can insert
|
There are three points in time where you can insert custom,
|
||||||
custom initialization logic:
|
board-specific initialization logic:
|
||||||
|
|
||||||
1) <arch>_board_initialize(): This function is used only for
|
1) <arch>_board_initialize(): This function is used only for
|
||||||
initialization of very low-level things like configuration of
|
initialization of very low-level things like configuration of
|
||||||
@ -1215,7 +1215,7 @@ config BOARD_LATE_INITIALIZE
|
|||||||
|
|
||||||
At this same point in time, the OS will also call a board-
|
At this same point in time, the OS will also call a board-
|
||||||
specific initialization function named board_early_initialize()
|
specific initialization function named board_early_initialize()
|
||||||
if CONFIG_BOARD_EARLY_INITIALIZE is selectd. The context in
|
if CONFIG_BOARD_EARLY_INITIALIZE is selected. The context in
|
||||||
which board_early_initialize() executes is suitable for early
|
which board_early_initialize() executes is suitable for early
|
||||||
initialization of most, simple device drivers and is a logical,
|
initialization of most, simple device drivers and is a logical,
|
||||||
board-specific extension of up_initialize().
|
board-specific extension of up_initialize().
|
||||||
|
@ -573,6 +573,7 @@ void nx_start(void)
|
|||||||
g_nx_initstate = OSINIT_TASKLISTS;
|
g_nx_initstate = OSINIT_TASKLISTS;
|
||||||
|
|
||||||
/* Initialize RTOS facilities *********************************************/
|
/* Initialize RTOS facilities *********************************************/
|
||||||
|
|
||||||
/* Initialize the semaphore facility. This has to be done very early
|
/* Initialize the semaphore facility. This has to be done very early
|
||||||
* because many subsystems depend upon fully functional semaphores.
|
* because many subsystems depend upon fully functional semaphores.
|
||||||
*/
|
*/
|
||||||
@ -711,6 +712,8 @@ void nx_start(void)
|
|||||||
net_initialize();
|
net_initialize();
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
/* Initialize Hardware Facilities *****************************************/
|
||||||
|
|
||||||
/* The processor specific details of running the operating system
|
/* The processor specific details of running the operating system
|
||||||
* will be handled here. Such things as setting up interrupt
|
* will be handled here. Such things as setting up interrupt
|
||||||
* service routines and starting the clock are some of the things
|
* service routines and starting the clock are some of the things
|
||||||
@ -732,6 +735,8 @@ void nx_start(void)
|
|||||||
|
|
||||||
g_nx_initstate = OSINIT_HARDWARE;
|
g_nx_initstate = OSINIT_HARDWARE;
|
||||||
|
|
||||||
|
/* Setup for Multi-Tasking ************************************************/
|
||||||
|
|
||||||
#ifdef CONFIG_MM_SHM
|
#ifdef CONFIG_MM_SHM
|
||||||
/* Initialize shared memory support */
|
/* Initialize shared memory support */
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user