Select one of the symbols to view example projects that use it.
 
Outline
...
...
...
...
#define TX_SOURCE_CODE
#include "tx_api.h"
#include "tx_trace.h"
#define TX_INVOKE_INLINE_INITIALIZATION
#include "tx_initialize.h"
#include "tx_thread.h"
#include "tx_timer.h"
#include "tx_semaphore.h"
#include "tx_queue.h"
#include "tx_event_flags.h"
#include "tx_mutex.h"
#include "tx_block_pool.h"
#include "tx_byte_pool.h"
_tx_initialize_unused_memory
...
...
_tx_initialize_high_level()
Files
loading...
CodeScopeSTM32 Libraries and Samplesthreadxcommon/src/tx_initialize_high_level.c
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/**************************************************************************/ /* */ /* Copyright (c) Microsoft Corporation. All rights reserved. */ /* */ /* This software is licensed under the Microsoft Software License */ /* Terms for Microsoft Azure RTOS. Full text of the license can be */ /* found in the LICENSE file at https://aka.ms/AzureRTOS_EULA */ /* and in the root directory of this software. */ /* */... /**************************************************************************/ ... /**************************************************************************/ /**************************************************************************/ /** */ /** ThreadX Component */ /** */ /** Initialize */ /** */... /**************************************************************************/ /**************************************************************************/ #define TX_SOURCE_CODE /* Include necessary system files. */ #include "tx_api.h" #include "tx_trace.h" /* Determine if in-line initialization is required. */ #ifdef TX_INLINE_INITIALIZATION #define TX_INVOKE_INLINE_INITIALIZATION #endif #include "tx_initialize.h" #include "tx_thread.h" #include "tx_timer.h" #include "tx_semaphore.h" #include "tx_queue.h" #include "tx_event_flags.h" #include "tx_mutex.h" #include "tx_block_pool.h" #include "tx_byte_pool.h" 9 includes /* Define the unused memory pointer. The value of the first available memory address is placed in this variable in the low-level initialization function. The content of this variable is passed to the application's system definition function. *//* ... */ VOID *_tx_initialize_unused_memory; ... /**************************************************************************/ /* */ /* FUNCTION RELEASE */ /* */ /* _tx_initialize_high_level PORTABLE C */ /* 6.1 */ /* AUTHOR */ /* */ /* William E. Lamie, Microsoft Corporation */ /* */ /* DESCRIPTION */ /* */ /* This function is responsible for initializing all of the other */ /* components in the ThreadX real-time kernel. */ /* */ /* INPUT */ /* */ /* None */ /* */ /* OUTPUT */ /* */ /* None */ /* */ /* CALLS */ /* */ /* _tx_thread_initialize Initialize the thread control */ /* component */ /* _tx_timer_initialize Initialize the timer control */ /* component */ /* _tx_semaphore_initialize Initialize the semaphore control */ /* component */ /* _tx_queue_initialize Initialize the queue control */ /* component */ /* _tx_event_flags_initialize Initialize the event flags control*/ /* component */ /* _tx_block_pool_initialize Initialize the block pool control */ /* component */ /* _tx_byte_pool_initialize Initialize the byte pool control */ /* component */ /* _tx_mutex_initialize Initialize the mutex control */ /* component */ /* */ /* CALLED BY */ /* */ /* _tx_initialize_kernel_enter Kernel entry function */ /* _tx_initialize_kernel_setup Early kernel setup function that */ /* is optionally called by */ /* compiler's startup code. */ /* */ /* RELEASE HISTORY */ /* */ /* DATE NAME DESCRIPTION */ /* */ /* 05-19-2020 William E. Lamie Initial Version 6.0 */ /* 09-30-2020 Yuxin Zhou Modified comment(s), */ /* resulting in version 6.1 */ /* */... /**************************************************************************/ VOID _tx_initialize_high_level(VOID) { /* Initialize event tracing, if enabled. */ TX_TRACE_INITIALIZE /* Initialize the event log, if enabled. */ TX_EL_INITIALIZE /* Call the thread control initialization function. */ _tx_thread_initialize(); #ifndef TX_NO_TIMER /* Call the timer control initialization function. */ _tx_timer_initialize();/* ... */ #endif #ifndef TX_DISABLE_REDUNDANT_CLEARING /* Call the semaphore initialization function. */ _tx_semaphore_initialize(); /* Call the queue initialization function. */ _tx_queue_initialize(); /* Call the event flag initialization function. */ _tx_event_flags_initialize(); /* Call the block pool initialization function. */ _tx_block_pool_initialize(); /* Call the byte pool initialization function. */ _tx_byte_pool_initialize(); /* Call the mutex initialization function. */ _tx_mutex_initialize();/* ... */ #endif }{ ... }