aboutsummaryrefslogtreecommitdiff
path: root/keyboards/matrix/noah/chconf.h
diff options
context:
space:
mode:
Diffstat (limited to 'keyboards/matrix/noah/chconf.h')
-rw-r--r--keyboards/matrix/noah/chconf.h209
1 files changed, 198 insertions, 11 deletions
diff --git a/keyboards/matrix/noah/chconf.h b/keyboards/matrix/noah/chconf.h
index 228a0827d..7dc4f84a8 100644
--- a/keyboards/matrix/noah/chconf.h
+++ b/keyboards/matrix/noah/chconf.h
@@ -1,5 +1,5 @@
1/* 1/*
2 ChibiOS - Copyright (C) 2006..2016 Giovanni Di Sirio 2 ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio
3 3
4 Licensed under the Apache License, Version 2.0 (the "License"); 4 Licensed under the Apache License, Version 2.0 (the "License");
5 you may not use this file except in compliance with the License. 5 you may not use this file except in compliance with the License.
@@ -15,7 +15,7 @@
15*/ 15*/
16 16
17/** 17/**
18 * @file templates/chconf.h 18 * @file rt/templates/chconf.h
19 * @brief Configuration file template. 19 * @brief Configuration file template.
20 * @details A copy of this file must be placed in each project directory, it 20 * @details A copy of this file must be placed in each project directory, it
21 * contains the application specific kernel settings. 21 * contains the application specific kernel settings.
@@ -29,6 +29,7 @@
29#define CHCONF_H 29#define CHCONF_H
30 30
31#define _CHIBIOS_RT_CONF_ 31#define _CHIBIOS_RT_CONF_
32#define _CHIBIOS_RT_CONF_VER_6_0_
32 33
33/*===========================================================================*/ 34/*===========================================================================*/
34/** 35/**
@@ -41,14 +42,34 @@
41 * @brief System time counter resolution. 42 * @brief System time counter resolution.
42 * @note Allowed values are 16 or 32 bits. 43 * @note Allowed values are 16 or 32 bits.
43 */ 44 */
45#if !defined(CH_CFG_ST_RESOLUTION)
44#define CH_CFG_ST_RESOLUTION 32 46#define CH_CFG_ST_RESOLUTION 32
47#endif
45 48
46/** 49/**
47 * @brief System tick frequency. 50 * @brief System tick frequency.
48 * @details Frequency of the system timer that drives the system ticks. This 51 * @details Frequency of the system timer that drives the system ticks. This
49 * setting also defines the system tick time unit. 52 * setting also defines the system tick time unit.
50 */ 53 */
54#if !defined(CH_CFG_ST_FREQUENCY)
51#define CH_CFG_ST_FREQUENCY 10000 55#define CH_CFG_ST_FREQUENCY 10000
56#endif
57
58/**
59 * @brief Time intervals data size.
60 * @note Allowed values are 16, 32 or 64 bits.
61 */
62#if !defined(CH_CFG_INTERVALS_SIZE)
63#define CH_CFG_INTERVALS_SIZE 32
64#endif
65
66/**
67 * @brief Time types data size.
68 * @note Allowed values are 16 or 32 bits.
69 */
70#if !defined(CH_CFG_TIME_TYPES_SIZE)
71#define CH_CFG_TIME_TYPES_SIZE 32
72#endif
52 73
53/** 74/**
54 * @brief Time delta constant for the tick-less mode. 75 * @brief Time delta constant for the tick-less mode.
@@ -58,7 +79,9 @@
58 * The value one is not valid, timeouts are rounded up to 79 * The value one is not valid, timeouts are rounded up to
59 * this value. 80 * this value.
60 */ 81 */
82#if !defined(CH_CFG_ST_TIMEDELTA)
61#define CH_CFG_ST_TIMEDELTA 2 83#define CH_CFG_ST_TIMEDELTA 2
84#endif
62 85
63/** @} */ 86/** @} */
64 87
@@ -81,7 +104,9 @@
81 * @note The round robin preemption is not supported in tickless mode and 104 * @note The round robin preemption is not supported in tickless mode and
82 * must be set to zero in that case. 105 * must be set to zero in that case.
83 */ 106 */
107#if !defined(CH_CFG_TIME_QUANTUM)
84#define CH_CFG_TIME_QUANTUM 0 108#define CH_CFG_TIME_QUANTUM 0
109#endif
85 110
86/** 111/**
87 * @brief Managed RAM size. 112 * @brief Managed RAM size.
@@ -94,7 +119,9 @@
94 * provide the @p __heap_base__ and @p __heap_end__ symbols. 119 * provide the @p __heap_base__ and @p __heap_end__ symbols.
95 * @note Requires @p CH_CFG_USE_MEMCORE. 120 * @note Requires @p CH_CFG_USE_MEMCORE.
96 */ 121 */
122#if !defined(CH_CFG_MEMCORE_SIZE)
97#define CH_CFG_MEMCORE_SIZE 0 123#define CH_CFG_MEMCORE_SIZE 0
124#endif
98 125
99/** 126/**
100 * @brief Idle thread automatic spawn suppression. 127 * @brief Idle thread automatic spawn suppression.
@@ -103,12 +130,9 @@
103 * function becomes the idle thread and must implement an 130 * function becomes the idle thread and must implement an
104 * infinite loop. 131 * infinite loop.
105 */ 132 */
133#if !defined(CH_CFG_NO_IDLE_THREAD)
106#define CH_CFG_NO_IDLE_THREAD FALSE 134#define CH_CFG_NO_IDLE_THREAD FALSE
107 135#endif
108
109/* Use __WFI in the idle thread for waiting. Does lower the power
110 * consumption. */
111#define CORTEX_ENABLE_WFI_IDLE TRUE
112 136
113/** @} */ 137/** @} */
114 138
@@ -127,7 +151,9 @@
127 * @note This is not related to the compiler optimization options. 151 * @note This is not related to the compiler optimization options.
128 * @note The default is @p TRUE. 152 * @note The default is @p TRUE.
129 */ 153 */
154#if !defined(CH_CFG_OPTIMIZE_SPEED)
130#define CH_CFG_OPTIMIZE_SPEED TRUE 155#define CH_CFG_OPTIMIZE_SPEED TRUE
156#endif
131 157
132/** @} */ 158/** @} */
133 159
@@ -145,7 +171,9 @@
145 * 171 *
146 * @note The default is @p TRUE. 172 * @note The default is @p TRUE.
147 */ 173 */
174#if !defined(CH_CFG_USE_TM)
148#define CH_CFG_USE_TM TRUE 175#define CH_CFG_USE_TM TRUE
176#endif
149 177
150/** 178/**
151 * @brief Threads registry APIs. 179 * @brief Threads registry APIs.
@@ -153,7 +181,9 @@
153 * 181 *
154 * @note The default is @p TRUE. 182 * @note The default is @p TRUE.
155 */ 183 */
184#if !defined(CH_CFG_USE_REGISTRY)
156#define CH_CFG_USE_REGISTRY TRUE 185#define CH_CFG_USE_REGISTRY TRUE
186#endif
157 187
158/** 188/**
159 * @brief Threads synchronization APIs. 189 * @brief Threads synchronization APIs.
@@ -162,7 +192,9 @@
162 * 192 *
163 * @note The default is @p TRUE. 193 * @note The default is @p TRUE.
164 */ 194 */
195#if !defined(CH_CFG_USE_WAITEXIT)
165#define CH_CFG_USE_WAITEXIT TRUE 196#define CH_CFG_USE_WAITEXIT TRUE
197#endif
166 198
167/** 199/**
168 * @brief Semaphores APIs. 200 * @brief Semaphores APIs.
@@ -170,7 +202,9 @@
170 * 202 *
171 * @note The default is @p TRUE. 203 * @note The default is @p TRUE.
172 */ 204 */
205#if !defined(CH_CFG_USE_SEMAPHORES)
173#define CH_CFG_USE_SEMAPHORES TRUE 206#define CH_CFG_USE_SEMAPHORES TRUE
207#endif
174 208
175/** 209/**
176 * @brief Semaphores queuing mode. 210 * @brief Semaphores queuing mode.
@@ -181,7 +215,9 @@
181 * requirements. 215 * requirements.
182 * @note Requires @p CH_CFG_USE_SEMAPHORES. 216 * @note Requires @p CH_CFG_USE_SEMAPHORES.
183 */ 217 */
218#if !defined(CH_CFG_USE_SEMAPHORES_PRIORITY)
184#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE 219#define CH_CFG_USE_SEMAPHORES_PRIORITY FALSE
220#endif
185 221
186/** 222/**
187 * @brief Mutexes APIs. 223 * @brief Mutexes APIs.
@@ -189,7 +225,9 @@
189 * 225 *
190 * @note The default is @p TRUE. 226 * @note The default is @p TRUE.
191 */ 227 */
228#if !defined(CH_CFG_USE_MUTEXES)
192#define CH_CFG_USE_MUTEXES TRUE 229#define CH_CFG_USE_MUTEXES TRUE
230#endif
193 231
194/** 232/**
195 * @brief Enables recursive behavior on mutexes. 233 * @brief Enables recursive behavior on mutexes.
@@ -199,7 +237,9 @@
199 * @note The default is @p FALSE. 237 * @note The default is @p FALSE.
200 * @note Requires @p CH_CFG_USE_MUTEXES. 238 * @note Requires @p CH_CFG_USE_MUTEXES.
201 */ 239 */
240#if !defined(CH_CFG_USE_MUTEXES_RECURSIVE)
202#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE 241#define CH_CFG_USE_MUTEXES_RECURSIVE FALSE
242#endif
203 243
204/** 244/**
205 * @brief Conditional Variables APIs. 245 * @brief Conditional Variables APIs.
@@ -209,7 +249,9 @@
209 * @note The default is @p TRUE. 249 * @note The default is @p TRUE.
210 * @note Requires @p CH_CFG_USE_MUTEXES. 250 * @note Requires @p CH_CFG_USE_MUTEXES.
211 */ 251 */
252#if !defined(CH_CFG_USE_CONDVARS)
212#define CH_CFG_USE_CONDVARS TRUE 253#define CH_CFG_USE_CONDVARS TRUE
254#endif
213 255
214/** 256/**
215 * @brief Conditional Variables APIs with timeout. 257 * @brief Conditional Variables APIs with timeout.
@@ -219,7 +261,9 @@
219 * @note The default is @p TRUE. 261 * @note The default is @p TRUE.
220 * @note Requires @p CH_CFG_USE_CONDVARS. 262 * @note Requires @p CH_CFG_USE_CONDVARS.
221 */ 263 */
264#if !defined(CH_CFG_USE_CONDVARS_TIMEOUT)
222#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE 265#define CH_CFG_USE_CONDVARS_TIMEOUT TRUE
266#endif
223 267
224/** 268/**
225 * @brief Events Flags APIs. 269 * @brief Events Flags APIs.
@@ -227,7 +271,9 @@
227 * 271 *
228 * @note The default is @p TRUE. 272 * @note The default is @p TRUE.
229 */ 273 */
274#if !defined(CH_CFG_USE_EVENTS)
230#define CH_CFG_USE_EVENTS TRUE 275#define CH_CFG_USE_EVENTS TRUE
276#endif
231 277
232/** 278/**
233 * @brief Events Flags APIs with timeout. 279 * @brief Events Flags APIs with timeout.
@@ -237,7 +283,9 @@
237 * @note The default is @p TRUE. 283 * @note The default is @p TRUE.
238 * @note Requires @p CH_CFG_USE_EVENTS. 284 * @note Requires @p CH_CFG_USE_EVENTS.
239 */ 285 */
286#if !defined(CH_CFG_USE_EVENTS_TIMEOUT)
240#define CH_CFG_USE_EVENTS_TIMEOUT TRUE 287#define CH_CFG_USE_EVENTS_TIMEOUT TRUE
288#endif
241 289
242/** 290/**
243 * @brief Synchronous Messages APIs. 291 * @brief Synchronous Messages APIs.
@@ -246,7 +294,9 @@
246 * 294 *
247 * @note The default is @p TRUE. 295 * @note The default is @p TRUE.
248 */ 296 */
297#if !defined(CH_CFG_USE_MESSAGES)
249#define CH_CFG_USE_MESSAGES TRUE 298#define CH_CFG_USE_MESSAGES TRUE
299#endif
250 300
251/** 301/**
252 * @brief Synchronous Messages queuing mode. 302 * @brief Synchronous Messages queuing mode.
@@ -257,7 +307,9 @@
257 * requirements. 307 * requirements.
258 * @note Requires @p CH_CFG_USE_MESSAGES. 308 * @note Requires @p CH_CFG_USE_MESSAGES.
259 */ 309 */
310#if !defined(CH_CFG_USE_MESSAGES_PRIORITY)
260#define CH_CFG_USE_MESSAGES_PRIORITY FALSE 311#define CH_CFG_USE_MESSAGES_PRIORITY FALSE
312#endif
261 313
262/** 314/**
263 * @brief Mailboxes APIs. 315 * @brief Mailboxes APIs.
@@ -267,7 +319,9 @@
267 * @note The default is @p TRUE. 319 * @note The default is @p TRUE.
268 * @note Requires @p CH_CFG_USE_SEMAPHORES. 320 * @note Requires @p CH_CFG_USE_SEMAPHORES.
269 */ 321 */
322#if !defined(CH_CFG_USE_MAILBOXES)
270#define CH_CFG_USE_MAILBOXES TRUE 323#define CH_CFG_USE_MAILBOXES TRUE
324#endif
271 325
272/** 326/**
273 * @brief Core Memory Manager APIs. 327 * @brief Core Memory Manager APIs.
@@ -276,7 +330,9 @@
276 * 330 *
277 * @note The default is @p TRUE. 331 * @note The default is @p TRUE.
278 */ 332 */
333#if !defined(CH_CFG_USE_MEMCORE)
279#define CH_CFG_USE_MEMCORE TRUE 334#define CH_CFG_USE_MEMCORE TRUE
335#endif
280 336
281/** 337/**
282 * @brief Heap Allocator APIs. 338 * @brief Heap Allocator APIs.
@@ -288,7 +344,9 @@
288 * @p CH_CFG_USE_SEMAPHORES. 344 * @p CH_CFG_USE_SEMAPHORES.
289 * @note Mutexes are recommended. 345 * @note Mutexes are recommended.
290 */ 346 */
347#if !defined(CH_CFG_USE_HEAP)
291#define CH_CFG_USE_HEAP TRUE 348#define CH_CFG_USE_HEAP TRUE
349#endif
292 350
293/** 351/**
294 * @brief Memory Pools Allocator APIs. 352 * @brief Memory Pools Allocator APIs.
@@ -297,7 +355,31 @@
297 * 355 *
298 * @note The default is @p TRUE. 356 * @note The default is @p TRUE.
299 */ 357 */
358#if !defined(CH_CFG_USE_MEMPOOLS)
300#define CH_CFG_USE_MEMPOOLS TRUE 359#define CH_CFG_USE_MEMPOOLS TRUE
360#endif
361
362/**
363 * @brief Objects FIFOs APIs.
364 * @details If enabled then the objects FIFOs APIs are included
365 * in the kernel.
366 *
367 * @note The default is @p TRUE.
368 */
369#if !defined(CH_CFG_USE_OBJ_FIFOS)
370#define CH_CFG_USE_OBJ_FIFOS TRUE
371#endif
372
373/**
374 * @brief Pipes APIs.
375 * @details If enabled then the pipes APIs are included
376 * in the kernel.
377 *
378 * @note The default is @p TRUE.
379 */
380#if !defined(CH_CFG_USE_PIPES)
381#define CH_CFG_USE_PIPES TRUE
382#endif
301 383
302/** 384/**
303 * @brief Dynamic Threads APIs. 385 * @brief Dynamic Threads APIs.
@@ -308,7 +390,80 @@
308 * @note Requires @p CH_CFG_USE_WAITEXIT. 390 * @note Requires @p CH_CFG_USE_WAITEXIT.
309 * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS. 391 * @note Requires @p CH_CFG_USE_HEAP and/or @p CH_CFG_USE_MEMPOOLS.
310 */ 392 */
393#if !defined(CH_CFG_USE_DYNAMIC)
311#define CH_CFG_USE_DYNAMIC TRUE 394#define CH_CFG_USE_DYNAMIC TRUE
395#endif
396
397/** @} */
398
399/*===========================================================================*/
400/**
401 * @name Objects factory options
402 * @{
403 */
404/*===========================================================================*/
405
406/**
407 * @brief Objects Factory APIs.
408 * @details If enabled then the objects factory APIs are included in the
409 * kernel.
410 *
411 * @note The default is @p FALSE.
412 */
413#if !defined(CH_CFG_USE_FACTORY)
414#define CH_CFG_USE_FACTORY TRUE
415#endif
416
417/**
418 * @brief Maximum length for object names.
419 * @details If the specified length is zero then the name is stored by
420 * pointer but this could have unintended side effects.
421 */
422#if !defined(CH_CFG_FACTORY_MAX_NAMES_LENGTH)
423#define CH_CFG_FACTORY_MAX_NAMES_LENGTH 8
424#endif
425
426/**
427 * @brief Enables the registry of generic objects.
428 */
429#if !defined(CH_CFG_FACTORY_OBJECTS_REGISTRY)
430#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE
431#endif
432
433/**
434 * @brief Enables factory for generic buffers.
435 */
436#if !defined(CH_CFG_FACTORY_GENERIC_BUFFERS)
437#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE
438#endif
439
440/**
441 * @brief Enables factory for semaphores.
442 */
443#if !defined(CH_CFG_FACTORY_SEMAPHORES)
444#define CH_CFG_FACTORY_SEMAPHORES TRUE
445#endif
446
447/**
448 * @brief Enables factory for mailboxes.
449 */
450#if !defined(CH_CFG_FACTORY_MAILBOXES)
451#define CH_CFG_FACTORY_MAILBOXES TRUE
452#endif
453
454/**
455 * @brief Enables factory for objects FIFOs.
456 */
457#if !defined(CH_CFG_FACTORY_OBJ_FIFOS)
458#define CH_CFG_FACTORY_OBJ_FIFOS TRUE
459#endif
460
461/**
462 * @brief Enables factory for Pipes.
463 */
464#if !defined(CH_CFG_FACTORY_PIPES) || defined(__DOXYGEN__)
465#define CH_CFG_FACTORY_PIPES TRUE
466#endif
312 467
313/** @} */ 468/** @} */
314 469
@@ -324,7 +479,9 @@
324 * 479 *
325 * @note The default is @p FALSE. 480 * @note The default is @p FALSE.
326 */ 481 */
482#if !defined(CH_DBG_STATISTICS)
327#define CH_DBG_STATISTICS FALSE 483#define CH_DBG_STATISTICS FALSE
484#endif
328 485
329/** 486/**
330 * @brief Debug option, system state check. 487 * @brief Debug option, system state check.
@@ -333,7 +490,9 @@
333 * 490 *
334 * @note The default is @p FALSE. 491 * @note The default is @p FALSE.
335 */ 492 */
493#if !defined(CH_DBG_SYSTEM_STATE_CHECK)
336#define CH_DBG_SYSTEM_STATE_CHECK FALSE 494#define CH_DBG_SYSTEM_STATE_CHECK FALSE
495#endif
337 496
338/** 497/**
339 * @brief Debug option, parameters checks. 498 * @brief Debug option, parameters checks.
@@ -342,7 +501,9 @@
342 * 501 *
343 * @note The default is @p FALSE. 502 * @note The default is @p FALSE.
344 */ 503 */
504#if !defined(CH_DBG_ENABLE_CHECKS)
345#define CH_DBG_ENABLE_CHECKS FALSE 505#define CH_DBG_ENABLE_CHECKS FALSE
506#endif
346 507
347/** 508/**
348 * @brief Debug option, consistency checks. 509 * @brief Debug option, consistency checks.
@@ -352,7 +513,9 @@
352 * 513 *
353 * @note The default is @p FALSE. 514 * @note The default is @p FALSE.
354 */ 515 */
516#if !defined(CH_DBG_ENABLE_ASSERTS)
355#define CH_DBG_ENABLE_ASSERTS FALSE 517#define CH_DBG_ENABLE_ASSERTS FALSE
518#endif
356 519
357/** 520/**
358 * @brief Debug option, trace buffer. 521 * @brief Debug option, trace buffer.
@@ -360,14 +523,18 @@
360 * 523 *
361 * @note The default is @p CH_DBG_TRACE_MASK_DISABLED. 524 * @note The default is @p CH_DBG_TRACE_MASK_DISABLED.
362 */ 525 */
526#if !defined(CH_DBG_TRACE_MASK)
363#define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED 527#define CH_DBG_TRACE_MASK CH_DBG_TRACE_MASK_DISABLED
528#endif
364 529
365/** 530/**
366 * @brief Trace buffer entries. 531 * @brief Trace buffer entries.
367 * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is 532 * @note The trace buffer is only allocated if @p CH_DBG_TRACE_MASK is
368 * different from @p CH_DBG_TRACE_MASK_DISABLED. 533 * different from @p CH_DBG_TRACE_MASK_DISABLED.
369 */ 534 */
535#if !defined(CH_DBG_TRACE_BUFFER_SIZE)
370#define CH_DBG_TRACE_BUFFER_SIZE 128 536#define CH_DBG_TRACE_BUFFER_SIZE 128
537#endif
371 538
372/** 539/**
373 * @brief Debug option, stack checks. 540 * @brief Debug option, stack checks.
@@ -379,7 +546,9 @@
379 * @note The default failure mode is to halt the system with the global 546 * @note The default failure mode is to halt the system with the global
380 * @p panic_msg variable set to @p NULL. 547 * @p panic_msg variable set to @p NULL.
381 */ 548 */
549#if !defined(CH_DBG_ENABLE_STACK_CHECK)
382#define CH_DBG_ENABLE_STACK_CHECK FALSE 550#define CH_DBG_ENABLE_STACK_CHECK FALSE
551#endif
383 552
384/** 553/**
385 * @brief Debug option, stacks initialization. 554 * @brief Debug option, stacks initialization.
@@ -389,7 +558,9 @@
389 * 558 *
390 * @note The default is @p FALSE. 559 * @note The default is @p FALSE.
391 */ 560 */
561#if !defined(CH_DBG_FILL_THREADS)
392#define CH_DBG_FILL_THREADS FALSE 562#define CH_DBG_FILL_THREADS FALSE
563#endif
393 564
394/** 565/**
395 * @brief Debug option, threads profiling. 566 * @brief Debug option, threads profiling.
@@ -400,7 +571,9 @@
400 * @note This debug option is not currently compatible with the 571 * @note This debug option is not currently compatible with the
401 * tickless mode. 572 * tickless mode.
402 */ 573 */
574#if !defined(CH_DBG_THREADS_PROFILING)
403#define CH_DBG_THREADS_PROFILING FALSE 575#define CH_DBG_THREADS_PROFILING FALSE
576#endif
404 577
405/** @} */ 578/** @} */
406 579
@@ -412,6 +585,22 @@
412/*===========================================================================*/ 585/*===========================================================================*/
413 586
414/** 587/**
588 * @brief System structure extension.
589 * @details User fields added to the end of the @p ch_system_t structure.
590 */
591#define CH_CFG_SYSTEM_EXTRA_FIELDS \
592 /* Add threads custom fields here.*/
593
594/**
595 * @brief System initialization hook.
596 * @details User initialization code added to the @p chSysInit() function
597 * just before interrupts are enabled globally.
598 */
599#define CH_CFG_SYSTEM_INIT_HOOK() { \
600 /* Add threads initialization code here.*/ \
601}
602
603/**
415 * @brief Threads descriptor structure extension. 604 * @brief Threads descriptor structure extension.
416 * @details User fields added to the end of the @p thread_t structure. 605 * @details User fields added to the end of the @p thread_t structure.
417 */ 606 */
@@ -420,9 +609,9 @@
420 609
421/** 610/**
422 * @brief Threads initialization hook. 611 * @brief Threads initialization hook.
423 * @details User initialization code added to the @p chThdInit() API. 612 * @details User initialization code added to the @p _thread_init() function.
424 * 613 *
425 * @note It is invoked from within @p chThdInit() and implicitly from all 614 * @note It is invoked from within @p _thread_init() and implicitly from all
426 * the threads creation APIs. 615 * the threads creation APIs.
427 */ 616 */
428#define CH_CFG_THREAD_INIT_HOOK(tp) { \ 617#define CH_CFG_THREAD_INIT_HOOK(tp) { \
@@ -459,8 +648,6 @@
459 /* IRQ epilogue code here.*/ \ 648 /* IRQ epilogue code here.*/ \
460} 649}
461 650
462#define ARM_WFI_IMPL __WFI
463
464/** 651/**
465 * @brief Idle thread enter hook. 652 * @brief Idle thread enter hook.
466 * @note This hook is invoked within a critical zone, no OS functions 653 * @note This hook is invoked within a critical zone, no OS functions