Software APIs
FreeRTOSConfig.h
1 // Copyright lowRISC contributors (OpenTitan project).
2 // Licensed under the Apache License, Version 2.0, see LICENSE for details.
3 // SPDX-License-Identifier: Apache-2.0
4 
5 #ifndef OPENTITAN_SW_DEVICE_LIB_TESTING_TEST_FRAMEWORK_FREERTOSCONFIG_H_
6 #define OPENTITAN_SW_DEVICE_LIB_TESTING_TEST_FRAMEWORK_FREERTOSCONFIG_H_
7 
8 // These macros configure FreeRTOS. A description of each macro can be found
9 // here: https://www.freertos.org/a00110.html
10 
11 // NOTE: the macro names below do NOT, and cannot, conform to the style
12 // guide, since they are specific to FreeRTOS.
13 
14 // Debugging
15 #define configGENERATE_RUN_TIME_STATS 0
16 #define configUSE_APPLICATION_TASK_TAG 0
17 #define configUSE_TRACE_FACILITY 0
18 
19 // Hooks
20 #define configUSE_IDLE_HOOK 0
21 #define configUSE_MALLOC_FAILED_HOOK 1
22 #define configUSE_TICK_HOOK 0
23 
24 // Memory
25 #define configAPPLICATION_ALLOCATED_HEAP 1
26 #define configCHECK_FOR_STACK_OVERFLOW 1
27 #define configMINIMAL_STACK_SIZE 256 // in words
28 #define configSTACK_DEPTH_TYPE uint16_t
29 #define configTOTAL_HEAP_SIZE ((size_t)0x8000u)
30 #define configUSE_MALLOC_FAILED_HOOK 1
31 
32 // Other
33 #define configENABLE_BACKWARD_COMPATIBILITY 0
34 #define configMAX_TASK_NAME_LEN 16
35 #define configQUEUE_REGISTRY_SIZE 0
36 #define configUSE_TASK_NOTIFICATIONS 0
37 
38 // Scheduler
39 #define configIDLE_SHOULD_YIELD 0
40 #define configMAX_PRIORITIES 5
41 #define configTICK_RATE_HZ ((TickType_t)10) // 100ms tick rate
42 #define configUSE_PORT_OPTIMISED_TASK_SELECTION 1
43 #define configUSE_PREEMPTION 0
44 #define configUSE_TIME_SLICING 0
45 #define configUSE_16_BIT_TICKS 0
46 
47 // Software timers.
48 #define configUSE_TIMERS 0
49 
50 // Synchronization
51 #define configUSE_COUNTING_SEMAPHORES 0
52 #define configUSE_MUTEXES 0
53 #define configUSE_RECURSIVE_MUTEXES 0
54 
55 // FreeRTOS API functions to include in build image.
56 #define INCLUDE_vTaskPrioritySet 1
57 #define INCLUDE_uxTaskPriorityGet 1
58 #define INCLUDE_vTaskDelete 1
59 #define INCLUDE_vTaskSuspend 1
60 #define INCLUDE_eTaskGetState 1
61 #define INCLUDE_xTaskAbortDelay 1
62 #define INCLUDE_xTaskGetHandle 1
63 
64 #endif // OPENTITAN_SW_DEVICE_LIB_TESTING_TEST_FRAMEWORK_FREERTOSCONFIG_H_