// Copyright 2021 The Pigweed Authors | |
// | |
// Licensed under the Apache License, Version 2.0 (the "License"); you may not | |
// use this file except in compliance with the License. You may obtain a copy of | |
// the License at | |
// | |
// https://www.apache.org/licenses/LICENSE-2.0 | |
// | |
// Unless required by applicable law or agreed to in writing, software | |
// distributed under the License is distributed on an "AS IS" BASIS, WITHOUT | |
// WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the | |
// License for the specific language governing permissions and limitations under | |
// the License. | |
#pragma once | |
#include <stdint.h> | |
extern uint32_t SystemCoreClock; | |
#define configUSE_PREEMPTION 1 | |
#define configUSE_PORT_OPTIMISED_TASK_SELECTION 1 | |
#define configUSE_TICKLESS_IDLE 0 | |
#define configCPU_CLOCK_HZ (SystemCoreClock) | |
#define configTICK_RATE_HZ 1000 | |
#define configMAX_PRIORITIES 7 | |
#define configMINIMAL_STACK_SIZE 128 | |
#define configMAX_TASK_NAME_LEN 16 | |
#define configUSE_16_BIT_TICKS 0 | |
#define configIDLE_SHOULD_YIELD 1 | |
#define configUSE_TASK_NOTIFICATIONS 1 | |
#define configTASK_NOTIFICATION_ARRAY_ENTRIES 1 | |
#define configUSE_MUTEXES 1 | |
#define configUSE_RECURSIVE_MUTEXES 1 | |
#define configUSE_COUNTING_SEMAPHORES 1 | |
#define configQUEUE_REGISTRY_SIZE 8 | |
#define configUSE_QUEUE_SETS 0 | |
#define configUSE_TIME_SLICING 0 | |
#define configUSE_NEWLIB_REENTRANT 0 | |
#define configENABLE_BACKWARD_COMPATIBILITY 0 | |
#define configNUM_THREAD_LOCAL_STORAGE_POINTERS 0 | |
#define configSTACK_DEPTH_TYPE uint16_t | |
#define configMESSAGE_BUFFER_LENGTH_TYPE size_t | |
/* Memory allocation related definitions. */ | |
#define configSUPPORT_STATIC_ALLOCATION 0 | |
#define configSUPPORT_DYNAMIC_ALLOCATION 1 | |
#define configTOTAL_HEAP_SIZE 32768 | |
#define configAPPLICATION_ALLOCATED_HEAP 0 | |
/* Hook function related definitions. */ | |
#define configUSE_IDLE_HOOK 0 | |
#define configUSE_TICK_HOOK 0 | |
#define configCHECK_FOR_STACK_OVERFLOW 0 | |
#define configUSE_MALLOC_FAILED_HOOK 0 | |
#define configUSE_DAEMON_TASK_STARTUP_HOOK 0 | |
/* Run time and task stats gathering related definitions. */ | |
#define configGENERATE_RUN_TIME_STATS 0 | |
#define configUSE_TRACE_FACILITY 0 | |
#define configUSE_STATS_FORMATTING_FUNCTIONS 0 | |
/* Co-routine related definitions. */ | |
#define configUSE_CO_ROUTINES 0 | |
#define configMAX_CO_ROUTINE_PRIORITIES 2 | |
/* Software timer related definitions. */ | |
#define configUSE_TIMERS 1 | |
#define configTIMER_TASK_PRIORITY 3 | |
#define configTIMER_QUEUE_LENGTH 10 | |
#define configTIMER_TASK_STACK_DEPTH configMINIMAL_STACK_SIZE | |
/* __NVIC_PRIO_BITS in CMSIS */ | |
#define configPRIO_BITS 4 | |
/* Interrupt nesting behaviour configuration. */ | |
#define configKERNEL_INTERRUPT_PRIORITY (15 << (8 - configPRIO_BITS)) | |
#define configMAX_SYSCALL_INTERRUPT_PRIORITY (5 << (8 - configPRIO_BITS)) | |
/* Define to trap errors during development. */ | |
#define configASSERT(x) \ | |
if ((x) == 0) { \ | |
taskDISABLE_INTERRUPTS(); \ | |
for (;;) \ | |
; \ | |
} | |
/* Optional functions - most linkers will remove unused functions anyway. */ | |
#define INCLUDE_vTaskPrioritySet 1 | |
#define INCLUDE_uxTaskPriorityGet 1 | |
#define INCLUDE_vTaskDelete 1 | |
#define INCLUDE_vTaskSuspend 1 | |
#define INCLUDE_xResumeFromISR 0 | |
#define INCLUDE_vTaskDelayUntil 1 | |
#define INCLUDE_vTaskDelay 1 | |
#define INCLUDE_xTaskGetSchedulerState 1 | |
#define INCLUDE_xTaskGetCurrentTaskHandle 0 | |
#define INCLUDE_uxTaskGetStackHighWaterMark 0 | |
#define INCLUDE_xTaskGetIdleTaskHandle 0 | |
#define INCLUDE_eTaskGetState 0 | |
#define INCLUDE_xEventGroupSetBitFromISR 0 | |
#define INCLUDE_xTimerPendFunctionCall 0 | |
#define INCLUDE_xTaskAbortDelay 0 | |
#define INCLUDE_xTaskGetHandle 0 | |
#define INCLUDE_xTaskResumeFromISR 0 |