18#include "esp_heap_caps.h"
30#define portBASE_TYPE int
31#define portUBASE_TYPE unsigned portBASE_TYPE
32#define portTICK_TYPE uint32_t
33#define portSTACK_TYPE uint8_t
35#define portMAX_DELAY 0xFFFFFFFFUL
37#define portMUX_TYPE mutex_t
38#define portMUX_INITIALIZE mutex_init
39#define portMUX_INITIALIZER_UNLOCKED MUTEX_INIT
41#define portYIELD thread_yield_higher
42#define portYIELD_FROM_ISR thread_yield_higher
44#define portENTER_CRITICAL vTaskEnterCritical
45#define portEXIT_CRITICAL vTaskExitCritical
46#define portENTER_CRITICAL_SAFE vTaskEnterCritical
47#define portEXIT_CRITICAL_SAFE vTaskExitCritical
48#define portENTER_CRITICAL_ISR vTaskEnterCritical
49#define portEXIT_CRITICAL_ISR vTaskExitCritical
50#define portENTER_CRITICAL_NESTED irq_disable
51#define portEXIT_CRITICAL_NESTED irq_restore
53#define portSET_INTERRUPT_MASK_FROM_ISR xPortSetInterruptMaskFromISR
54#define portCLEAR_INTERRUPT_MASK_FROM_ISR vPortClearInterruptMaskFromISR
56#define errCOULD_NOT_ALLOCATE_REQUIRED_MEMORY ( -1 )
68# define portNUM_PROCESSORS SOC_CPU_CORES_NUM
70# define portNUM_PROCESSORS 1
73#define xPortGetCoreID() PRO_CPU_NUM
74#define vPortYield portYIELD
76extern void vTaskEnterCritical(portMUX_TYPE *mux);
77extern void vTaskExitCritical(portMUX_TYPE *mux);
79bool xPortCanYield(
void);
Mutex for thread synchronization.