MCPcopy Create free account
hub / github.com/RT-Thread/rt-thread / efm32_emu_init

Function efm32_emu_init

bsp/efm32/drv_emu.c:180–229  ·  view source on GitHub ↗

/ * @brief * Initialize EMU module related hardware * * @details * * @note * ******************************************************************************/

Source from the content-addressed store, hash-verified

178 *
179 ******************************************************************************/
180void efm32_emu_init(void)
181{
182 do
183 {
184 /* init token */
185 if (rt_sem_init(
186 &emu_task.em2,
187 "EM2",
188 EMU_TASK_EM2_TOKEN_NUMBER,
189 RT_IPC_FLAG_FIFO) != RT_EOK)
190 {
191 break;
192 }
193 if (rt_sem_init(
194 &emu_task.em3,
195 "EM3",
196 EMU_TASK_EM3_TOKEN_NUMBER,
197 RT_IPC_FLAG_FIFO) != RT_EOK)
198 {
199 break;
200 }
201 if (rt_sem_init(
202 &emu_task.em4,
203 "EM4",
204 EMU_TASK_EM4_TOKEN_NUMBER,
205 RT_IPC_FLAG_FIFO) != RT_EOK)
206 {
207 break;
208 }
209
210 /* init thread */
211 if (rt_thread_init(
212 &emu_task.thread,
213 "EMU",
214 emu_task_main_loop, (void *)&emu_task,
215 (void *)&emu_task.stack, sizeof(emu_task.stack),
216 RT_THREAD_PRIORITY_MAX - 2, RT_TICK_PER_SECOND) != RT_EOK)
217 {
218 break;
219 }
220
221 /* startup */
222 if (rt_thread_startup(&emu_task.thread) != RT_EOK)
223 {
224 break;
225 }
226 } while (0);
227
228 rt_kprintf("EMU err: init failed!\n");
229}
230
231/*******************************************************************************
232 * Export to FINSH

Callers 1

rtthread_startupFunction · 0.85

Calls 4

rt_sem_initFunction · 0.85
rt_thread_initFunction · 0.85
rt_thread_startupFunction · 0.85
rt_kprintfFunction · 0.85

Tested by

no test coverage detected