52#ifndef portENTER_CRITICAL
56#if portBYTE_ALIGNMENT == 32
57 #define portBYTE_ALIGNMENT_MASK ( 0x001f )
58#elif portBYTE_ALIGNMENT == 16
59 #define portBYTE_ALIGNMENT_MASK ( 0x000f )
60#elif portBYTE_ALIGNMENT == 8
61 #define portBYTE_ALIGNMENT_MASK ( 0x0007 )
62#elif portBYTE_ALIGNMENT == 4
63 #define portBYTE_ALIGNMENT_MASK ( 0x0003 )
64#elif portBYTE_ALIGNMENT == 2
65 #define portBYTE_ALIGNMENT_MASK ( 0x0001 )
66#elif portBYTE_ALIGNMENT == 1
67 #define portBYTE_ALIGNMENT_MASK ( 0x0000 )
69 #error "Invalid portBYTE_ALIGNMENT definition"
72#ifndef portUSING_MPU_WRAPPERS
73 #define portUSING_MPU_WRAPPERS 0
76#ifndef portNUM_CONFIGURABLE_REGIONS
77 #define portNUM_CONFIGURABLE_REGIONS 1
80#ifndef portHAS_STACK_OVERFLOW_CHECKING
81 #define portHAS_STACK_OVERFLOW_CHECKING 0
85 #define portARCH_NAME NULL
88#ifndef configSTACK_ALLOCATION_FROM_SEPARATE_HEAP
90 #define configSTACK_ALLOCATION_FROM_SEPARATE_HEAP 0
107#if ( portUSING_MPU_WRAPPERS == 1 )
108 #if ( portHAS_STACK_OVERFLOW_CHECKING == 1 )
123 #if ( portHAS_STACK_OVERFLOW_CHECKING == 1 )
185#if ( configSTACK_ALLOCATION_FROM_SEPARATE_HEAP == 1 )
189 #define pvPortMallocStack pvPortMalloc
190 #define vPortFreeStack vPortFree
193#if ( configUSE_MALLOC_FAILED_HOOK == 1 )
226#if ( portUSING_MPU_WRAPPERS == 1 )
228 void vPortStoreTaskMPUSettings( xMPU_SETTINGS * xMPUSettings,
244#if ( portUSING_MPU_WRAPPERS == 1 )
245 BaseType_t xPortIsAuthorizedToAccessBuffer(
const void * pvBuffer,
246 uint32_t ulBufferLength,
259#if ( ( portUSING_MPU_WRAPPERS == 1 ) && ( configUSE_MPU_WRAPPERS_V1 == 0 ) )
void vApplicationMallocFailedHook(void)
#define PRIVILEGED_FUNCTION
void vPortDefineHeapRegions(const HeapRegion_t *const pxHeapRegions) PRIVILEGED_FUNCTION
BaseType_t xPortStartScheduler(void) PRIVILEGED_FUNCTION
size_t xPortGetMinimumEverFreeHeapSize(void) PRIVILEGED_FUNCTION
void vPortFree(void *pv) PRIVILEGED_FUNCTION
void * pvPortMalloc(size_t xSize) PRIVILEGED_FUNCTION
void vPortInitialiseBlocks(void) PRIVILEGED_FUNCTION
void * pvPortCalloc(size_t xNum, size_t xSize) PRIVILEGED_FUNCTION
size_t xPortGetFreeHeapSize(void) PRIVILEGED_FUNCTION
#define pvPortMallocStack
void vPortEndScheduler(void) PRIVILEGED_FUNCTION
void vPortGetHeapStats(HeapStats_t *pxHeapStats)
StackType_t * pxPortInitialiseStack(StackType_t *pxTopOfStack, TaskFunction_t pxCode, void *pvParameters) PRIVILEGED_FUNCTION
struct HeapRegion HeapRegion_t
struct xHeapStats HeapStats_t
portSTACK_TYPE StackType_t
void(* TaskFunction_t)(void *)
uint8_t * pucStartAddress
size_t xNumberOfSuccessfulAllocations
size_t xNumberOfSuccessfulFrees
size_t xMinimumEverFreeBytesRemaining
size_t xAvailableHeapSpaceInBytes
size_t xSizeOfLargestFreeBlockInBytes
size_t xNumberOfFreeBlocks
size_t xSizeOfSmallestFreeBlockInBytes